<SEC-DOCUMENT>0001159167-20-000007.txt : 20200213
<SEC-HEADER>0001159167-20-000007.hdr.sgml : 20200213
<ACCEPTANCE-DATETIME>20200213160443
ACCESSION NUMBER:		0001159167-20-000007
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		107
CONFORMED PERIOD OF REPORT:	20191228
FILED AS OF DATE:		20200213
DATE AS OF CHANGE:		20200213

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			IROBOT CORP
		CENTRAL INDEX KEY:			0001159167
		STANDARD INDUSTRIAL CLASSIFICATION:	HOUSEHOLD APPLIANCES [3630]
		IRS NUMBER:				770259335
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1228

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-36414
		FILM NUMBER:		20610372

	BUSINESS ADDRESS:	
		STREET 1:		8 CROSBY DRIVE
		CITY:			BEDFORD
		STATE:			MA
		ZIP:			01730
		BUSINESS PHONE:		781-430-3000

	MAIL ADDRESS:	
		STREET 1:		8 CROSBY DRIVE
		CITY:			BEDFORD
		STATE:			MA
		ZIP:			01730
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>irbt-12282019x10k.htm
<DESCRIPTION>10-K
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>
<!--XBRL Document Created with Wdesk from Workiva-->
<!--p:6261744DC8365C8EAB66F4C392B04C5A,x:59b2b1421f524d4a9194e7cf16373464-->
<!-- Document created using Wdesk  -->
<!-- Copyright 2020 Workiva -->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:schedoi-fednote="http://fasb.org/dis/schedoi-fednote/2019-01-31" xmlns:fs-interest="http://fasb.org/dis/fs-interest/2019-01-31" xmlns:sfp-ibo="http://fasb.org/stm/sfp-ibo/2019-01-31" xmlns:sfp-sbo="http://fasb.org/stm/sfp-sbo/2019-01-31" xmlns:sic-std="http://xbrl.sec.gov/sic-std/2011-01-31" xmlns:stpr-std="http://xbrl.sec.gov/stpr-std-std-std/2018-01-31" xmlns:currency-ent-std="http://xbrl.sec.gov/currency-ent-std/2019-01-31" xmlns:lea="http://fasb.org/dis/lea/2019-01-31" xmlns:ctbl="http://fasb.org/dis/ctbl/2019-01-31" xmlns:guar="http://fasb.org/dis/guar/2019-01-31" xmlns:ru="http://fasb.org/dis/ru/2019-01-31" xmlns:stpr-all="http://xbrl.sec.gov/stpr-all-all-all/2018-01-31" xmlns:leas="http://fasb.org/dis/leas/2019-01-31" xmlns:sfp-clreo="http://fasb.org/stm/sfp-clreo/2019-01-31" xmlns:iaoi="http://fasb.org/dis/iaoi/2019-01-31" xmlns:soi-ins="http://fasb.org/stm/soi-ins/2019-01-31" xmlns:country-ent-std="http://xbrl.sec.gov/country-ent-std/2017-01-31" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:fs-insa="http://fasb.org/dis/fs-insa/2019-01-31" xmlns:naics="http://xbrl.sec.gov/naics/2017-01-31" xmlns:cce="http://fasb.org/dis/cce/2019-01-31" xmlns:inv="http://fasb.org/dis/inv/2019-01-31" xmlns:naics-ent-std="http://xbrl.sec.gov/naics-ent-std/2017-01-31" xmlns:srt-std="http://fasb.org/srt-std/2019-01-31" xmlns:stpr-ent-all="http://xbrl.sec.gov/stpr-ent-all-all-all/2018-01-31" xmlns:stpr-ent-std="http://xbrl.sec.gov/stpr-ent-std-std-std/2018-01-31" xmlns:schedoi-iiaa="http://fasb.org/dis/schedoi-iiaa/2019-01-31" xmlns:us-arcroles="http://fasb.org/us-arcroles/2019-01-31" xmlns:dccpoa="http://fasb.org/dis/dccpoa/2019-01-31" xmlns:soi-sbi="http://fasb.org/stm/soi-sbi/2019-01-31" xmlns:us-gaap-all="http://fasb.org/us-gaap-all/2019-01-31" xmlns:scf-sd="http://fasb.org/stm/scf-sd/2019-01-31" xmlns:ceclcalc3l="http://fasb.org/dis/ceclcalc3l/2019-01-31" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei-ent-all="http://xbrl.sec.gov/dei-ent-all/2019-01-31" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:deprecated="http://www.xbrl.org/2009/arcrole/deprecated" xmlns:naics-all="http://xbrl.sec.gov/naics-all/2017-01-31" xmlns:re="http://fasb.org/dis/re/2019-01-31" xmlns:srt-types="http://fasb.org/srt-types/2019-01-31" xmlns:reorg="http://fasb.org/dis/reorg/2019-01-31" xmlns:invco="http://fasb.org/dis/invco/2019-01-31" xmlns:currency-ent-all="http://xbrl.sec.gov/currency-ent-all/2019-01-31" xmlns:currency-std="http://xbrl.sec.gov/currency-std/2019-01-31" xmlns:currency-ent-dep="http://xbrl.sec.gov/currency-ent-dep/2019-01-31" xmlns:aro="http://fasb.org/dis/aro/2019-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2019-01-31" xmlns:ocpfs="http://fasb.org/dis/ocpfs/2019-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2019-01-31" xmlns:naics-std="http://xbrl.sec.gov/naics-std/2017-01-31" xmlns:srt-all="http://fasb.org/srt-all/2019-01-31" xmlns:codification-part="http://fasb.org/codification-part/2019-01-31" xmlns:srt="http://fasb.org/srt/2019-01-31" xmlns:deprecated1="http://www.xbrl.org/2009/role/deprecated" xmlns:sec-re="http://fasb.org/dis/sec-re/2019-01-31" xmlns:soi-int="http://fasb.org/stm/soi-int/2019-01-31" xmlns:emjv="http://fasb.org/dis/emjv/2019-01-31" xmlns:sec-suppc="http://fasb.org/dis/sec-suppc/2019-01-31" xmlns:irbt="http://www.irobot.com/20191228" xmlns:equity="http://fasb.org/dis/equity/2019-01-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:se="http://fasb.org/dis/se/2019-01-31" xmlns:crcrb="http://fasb.org/dis/crcrb/2019-01-31" xmlns:edco="http://fasb.org/dis/edco/2019-01-31" xmlns:te="http://fasb.org/dis/te/2019-01-31" xmlns:dei-all="http://xbrl.sec.gov/dei-all/2019-01-31" xmlns:fs-bd="http://fasb.org/dis/fs-bd/2019-01-31" xmlns:invest-all="http://xbrl.sec.gov/invest-all/2013-01-31" xmlns:hco="http://fasb.org/dis/hco/2019-01-31" xmlns:fs-bt="http://fasb.org/dis/fs-bt/2019-01-31" xmlns:us-roles="http://fasb.org/us-roles/2019-01-31" xmlns:dr="http://fasb.org/dis/dr/2019-01-31" xmlns:ero="http://fasb.org/dis/ero/2019-01-31" xmlns:country-ent-all="http://xbrl.sec.gov/country-ent-all/2017-01-31" xmlns:schedoi-oocw="http://fasb.org/dis/schedoi-oocw/2019-01-31" xmlns:cecl="http://fasb.org/dis/cecl/2019-01-31" xmlns:rpd="http://fasb.org/dis/rpd/2019-01-31" xmlns:schedoi-sumhold="http://fasb.org/dis/schedoi-sumhold/2019-01-31" xmlns:ceclcalc2="http://fasb.org/dis/ceclcalc2/2019-01-31" xmlns:othliab="http://fasb.org/dis/othliab/2019-01-31" xmlns:soi-egm="http://fasb.org/stm/soi-egm/2019-01-31" xmlns:schedoi-shorthold="http://fasb.org/dis/schedoi-shorthold/2019-01-31" xmlns:soi="http://fasb.org/stm/soi/2019-01-31" xmlns:diha="http://fasb.org/dis/diha/2019-01-31" xmlns:debt="http://fasb.org/dis/debt/2019-01-31" xmlns:schedoi-hold="http://fasb.org/dis/schedoi-hold/2019-01-31" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:invest-std="http://xbrl.sec.gov/invest-std/2013-01-31" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-gaap-ent-std="http://fasb.org/us-gaap-ent-std/2019-01-31" xmlns:bc="http://fasb.org/dis/bc/2019-01-31" xmlns:sic-ent-all="http://xbrl.sec.gov/sic-ent-all/2011-01-31" xmlns:exch-ent-std="http://xbrl.sec.gov/exch-ent-std/2019-01-31" xmlns:invest-ent-all="http://xbrl.sec.gov/invest-ent-all/2013-01-31" xmlns:rcc="http://fasb.org/dis/rcc/2019-01-31" xmlns:rd="http://fasb.org/dis/rd/2019-01-31" xmlns:sfp-ucreo="http://fasb.org/stm/sfp-ucreo/2019-01-31" xmlns:eui="http://fasb.org/dis/eui/2019-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:ap="http://fasb.org/dis/ap/2019-01-31" xmlns:soi-reit="http://fasb.org/stm/soi-reit/2019-01-31" xmlns:fs-mort="http://fasb.org/dis/fs-mort/2019-01-31" xmlns:sec-reins="http://fasb.org/dis/sec-reins/2019-01-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:sec-cndfir="http://fasb.org/dis/sec-cndfir/2019-01-31" xmlns:sr="http://fasb.org/dis/sr/2019-01-31" xmlns:currency-all="http://xbrl.sec.gov/currency-all/2019-01-31" xmlns:scf-dbo="http://fasb.org/stm/scf-dbo/2019-01-31" xmlns:fs-fhlb="http://fasb.org/dis/fs-fhlb/2019-01-31" xmlns:crcpb="http://fasb.org/dis/crcpb/2019-01-31" xmlns:dei-ent-std="http://xbrl.sec.gov/dei-ent-std/2019-01-31" xmlns:us-types="http://fasb.org/us-types/2019-01-31" xmlns:scf-inv="http://fasb.org/stm/scf-inv/2019-01-31" xmlns:scf-indira="http://fasb.org/stm/scf-indira/2019-01-31" xmlns:bsoff="http://fasb.org/dis/bsoff/2019-01-31" xmlns:exch-ent-all="http://xbrl.sec.gov/exch-ent-all/2019-01-31" xmlns:oi="http://fasb.org/dis/oi/2019-01-31" xmlns:soi-indira="http://fasb.org/stm/soi-indira/2019-01-31" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:schedoi-otsh="http://fasb.org/dis/schedoi-otsh/2019-01-31" xmlns:sfp-dbo="http://fasb.org/stm/sfp-dbo/2019-01-31" xmlns:cc="http://fasb.org/dis/cc/2019-01-31" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:crcsbp="http://fasb.org/dis/crcsbp/2019-01-31" xmlns:disops="http://fasb.org/dis/disops/2019-01-31" xmlns:reference="http://www.xbrl.org/2009/role/reference" xmlns:cn-part="http://fasb.org/cn-part/2019-01-31" xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31" xmlns:srt-roles="http://fasb.org/srt-roles/2019-01-31" xmlns:country-std="http://xbrl.sec.gov/country-std/2017-01-31" xmlns:net="http://www.xbrl.org/2009/role/net" xmlns:scf-indir="http://fasb.org/stm/scf-indir/2019-01-31" xmlns:rlnro="http://fasb.org/dis/rlnro/2019-01-31" xmlns:ts="http://fasb.org/dis/ts/2019-01-31" xmlns:us-gaap-std="http://fasb.org/us-gaap-std/2019-01-31" xmlns:naics-ent-all="http://xbrl.sec.gov/naics-ent-all/2017-01-31" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:scf-dir="http://fasb.org/stm/scf-dir/2019-01-31" xmlns:dei-std="http://xbrl.sec.gov/dei-std/2019-01-31" xmlns:ni="http://fasb.org/dis/ni/2019-01-31" xmlns:sec-mort="http://fasb.org/dis/sec-mort/2019-01-31" xmlns:fifvd="http://fasb.org/dis/fifvd/2019-01-31" xmlns:otherexp="http://fasb.org/dis/otherexp/2019-01-31" xmlns:scf-re="http://fasb.org/stm/scf-re/2019-01-31" xmlns:sec-vq="http://fasb.org/dis/sec-vq/2019-01-31" xmlns:sec-sum="http://fasb.org/dis/sec-sum/2019-01-31" xmlns:exch-std="http://xbrl.sec.gov/exch-std/2019-01-31" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:ir="http://fasb.org/dis/ir/2019-01-31" xmlns:sheci="http://fasb.org/stm/sheci/2019-01-31" xmlns:foct="http://fasb.org/dis/foct/2019-01-31" xmlns:soc="http://fasb.org/stm/soc/2019-01-31" xmlns:scf-sbo="http://fasb.org/stm/scf-sbo/2019-01-31" xmlns:inctax="http://fasb.org/dis/inctax/2019-01-31" xmlns:ppe="http://fasb.org/dis/ppe/2019-01-31" xmlns:country-all="http://xbrl.sec.gov/country-all/2017-01-31" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:con="http://fasb.org/dis/con/2019-01-31" xmlns:sic-ent-std="http://xbrl.sec.gov/sic-ent-std/2011-01-31" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:invest-ent-std="http://xbrl.sec.gov/invest-ent-std/2013-01-31" xmlns:fs-ins="http://fasb.org/dis/fs-ins/2019-01-31" xmlns:eps="http://fasb.org/dis/eps/2019-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:iago="http://fasb.org/dis/iago/2019-01-31" xmlns:pay="http://fasb.org/dis/pay/2019-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:tin-part="http://fasb.org/tin-part/2019-01-31" xmlns:acec="http://fasb.org/dis/acec/2019-01-31" xmlns:us-gaap-entryPoint-all="http://fasb.org/us-gaap-entryPoint-all/2019-01-31" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:nt="http://fasb.org/dis/nt/2019-01-31" xmlns:spc="http://fasb.org/stm/spc/2019-01-31" xmlns:exch-all="http://xbrl.sec.gov/exch-all/2019-01-31" xmlns:ides="http://fasb.org/dis/ides/2019-01-31" xmlns:sec-supins="http://fasb.org/dis/sec-supins/2019-01-31" xmlns:sic-all="http://xbrl.sec.gov/sic-all/2011-01-31" xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:regop="http://fasb.org/dis/regop/2019-01-31" xmlns:sfp-cls="http://fasb.org/stm/sfp-cls/2019-01-31" xmlns:com="http://fasb.org/stm/com/2019-01-31" xmlns:soi-re="http://fasb.org/stm/soi-re/2019-01-31" xmlns:crcgen="http://fasb.org/dis/crcgen/2019-01-31" xmlns:exch-ent-dep="http://xbrl.sec.gov/exch-ent-dep/2019-01-31" xmlns:negated="http://www.xbrl.org/2009/role/negated" xmlns:ei="http://fasb.org/dis/ei/2019-01-31" xmlns:xbrldt="http://xbrl.org/2005/xbrldt">
	<head>
		<meta http-equiv="Content-Type" content="text/html" />
		<title>Document</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:AmendmentFlag" id="Fact-439A13501D1AE667BAE21ECF8BFF49EF-wk-Fact-439A13501D1AE667BAE21ECF8BFF49EF" format="ixt:booleanfalse">false</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:CurrentFiscalYearEndDate" id="Fact-164F651C2ED9A9CD835B1ECF8C01FFBA-wk-Fact-164F651C2ED9A9CD835B1ECF8C01FFBA">--12-28</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:DocumentFiscalPeriodFocus" id="Fact-896710190090D73885E11ECF8BFE1479-wk-Fact-896710190090D73885E11ECF8BFE1479">FY</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:DocumentFiscalYearFocus" id="Fact-0495CBC5DB78D85DB78F1ECF8BFDF508-wk-Fact-0495CBC5DB78D85DB78F1ECF8BFDF508">2019</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:EntityCentralIndexKey" id="Fact-CBEFC0020B4BBD5D3768F1A84991AB29-wk-Fact-CBEFC0020B4BBD5D3768F1A84991AB29">0001159167</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="dei:EntitySmallBusiness" id="Fact-22F13C6268EA531BD29A30E6AFA2F13B-wk-Fact-22F13C6268EA531BD29A30E6AFA2F13B" format="ixt:booleanfalse">false</ix:nonNumeric><ix:nonFraction decimals="INF" unitRef="usdPerShare" contextRef="FI2018Q4" name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact-1A851E32AFF5EF51986A1ECF8C006831-wk-Fact-1A851E32AFF5EF51986A1ECF8C006831">0.01</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="usdPerShare" contextRef="FI2019Q4" name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact-91CA252651609821B3F71ECF8BFF92C6-wk-Fact-91CA252651609821B3F71ECF8BFF92C6">0.01</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:CommonStockSharesAuthorized" id="Fact-6FCB2C06673E860AC8BC1ECF8BF7008B-wk-Fact-6FCB2C06673E860AC8BC1ECF8BF7008B">100000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:CommonStockSharesAuthorized" id="Fact-6DE1FF2A101F478D2F4F1ECF8BF6B4AD-wk-Fact-6DE1FF2A101F478D2F4F1ECF8BF6B4AD">100000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:CommonStockSharesIssued" id="Fact-B4ABAF48AD4BF950BF931ECF8BF9C0DC-wk-Fact-B4ABAF48AD4BF950BF931ECF8BF9C0DC">27788272</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:CommonStockSharesIssued" id="Fact-F33302985FA0D465FF2A1ECF8BF5BF26-wk-Fact-F33302985FA0D465FF2A1ECF8BF5BF26">28352390</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:CommonStockSharesOutstanding" id="Fact-42374256EDCE917579301ECF8BF89AEA-wk-Fact-42374256EDCE917579301ECF8BF89AEA">27788272</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:CommonStockSharesOutstanding" id="Fact-087789E805CB5C93EE341ECF8C09B0A7-wk-Fact-087789E805CB5C93EE341ECF8C09B0A7">28352390</ix:nonFraction><ix:nonFraction decimals="-3" unitRef="usd" contextRef="FI2019Q4" name="us-gaap:LineOfCredit" id="Fact-BFE56009F1AEFF838F321ECF8BF00B42-wk-Fact-BFE56009F1AEFF838F321ECF8BF00B42">0</ix:nonFraction><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LineOfCreditFacilityInterestRateDescription" id="Fact-53CCA4B99D143CA54C321ECF8BF1CD24-wk-Fact-53CCA4B99D143CA54C321ECF8BF1CD24">at either (1) LIBOR plus a margin, currently equal to 1.0%, based on the Company's ratio of indebtedness to Adjusted EBITDA (the "Eurodollar Rate"), or (2) the lender's base rate.  </ix:nonNumeric><ix:nonFraction decimals="INF" unitRef="usdPerShare" contextRef="FI2018Q4" name="us-gaap:PreferredStockParOrStatedValuePerShare" id="Fact-79518B1F15261AA9D2DE1ECF8BD12335-wk-Fact-79518B1F15261AA9D2DE1ECF8BD12335">0.01</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:PreferredStockSharesAuthorized" id="Fact-5093A8B78CE6B38416351ECF8C020A51-wk-Fact-5093A8B78CE6B38416351ECF8C020A51">5000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:PreferredStockSharesAuthorized" id="Fact-02A5B14B85EC36A496D81ECF8BFC5863-wk-Fact-02A5B14B85EC36A496D81ECF8BFC5863">5000000</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:PreferredStockSharesIssued" id="Fact-2186618ACEB895A770461ECF8C2C4E6D-wk-Fact-2186618ACEB895A770461ECF8C2C4E6D">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:PreferredStockSharesIssued" id="Fact-DD9BBB8518EB12E2238C1ECF8BC7ADD5-wk-Fact-DD9BBB8518EB12E2238C1ECF8BC7ADD5">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2018Q4" name="us-gaap:PreferredStockSharesOutstanding" id="Fact-2FB12AFEE14BEDB548591ECF8B90A784-wk-Fact-2FB12AFEE14BEDB548591ECF8B90A784">0</ix:nonFraction><ix:nonFraction decimals="INF" unitRef="shares" contextRef="FI2019Q4" name="us-gaap:PreferredStockSharesOutstanding" id="Fact-3293883D02B52D71F0AB1ECF8BFBBC63-wk-Fact-3293883D02B52D71F0AB1ECF8BFBBC63">0</ix:nonFraction><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-E6FE04C05C9F57F58DB41ECF8C14897F-wk-Fact-E6FE04C05C9F57F58DB41ECF8C14897F">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-BA9B2CA4F3DC3915BAF61ECF8C0A2EBF-wk-Fact-BA9B2CA4F3DC3915BAF61ECF8C0A2EBF">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-C4BD1575713818D46AEC1ECF8C05F9C3-wk-Fact-C4BD1575713818D46AEC1ECF8C05F9C3">P7Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-BAEFFCA50B1914DF66CB1ECF8C085898-wk-Fact-BAEFFCA50B1914DF66CB1ECF8C085898">P5Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-06D5FBB4E4368B11747F1ECF8C0A5900-wk-Fact-06D5FBB4E4368B11747F1ECF8C0A5900">P2Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-6DB03F97FE681E731E7A1ECF8C09553A-wk-Fact-6DB03F97FE681E731E7A1ECF8C09553A">P2Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-A05A4E08C3EE5227EDA31ECF8C042276-wk-Fact-A05A4E08C3EE5227EDA31ECF8C042276">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-C48CD445629E9834A9B11ECF8C09F263-wk-Fact-C48CD445629E9834A9B11ECF8C09F263">P2Y</ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember" name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact-6085B1DAD14F29B5DF041ECF8C0EC236-wk-Fact-6085B1DAD14F29B5DF041ECF8C0EC236">P5Y</ix:nonNumeric><ix:nonFraction decimals="0" unitRef="usd" contextRef="FI2017Q4" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact-8DA2616F1A4FCB2CFEDD1ECF8BD53DF3-wk-Fact-8DA2616F1A4FCB2CFEDD1ECF8BD53DF3">0</ix:nonFraction><ix:nonFraction decimals="0" unitRef="usd" contextRef="FI2018Q4" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact-E041B5BCC8594AD8D1A91ECF8BD35FAE-wk-Fact-E041B5BCC8594AD8D1A91ECF8BD35FAE">0</ix:nonFraction><ix:nonFraction decimals="0" unitRef="usd" contextRef="FI2019Q4" name="us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" id="Fact-C94CEA675DFBF6EEACE61ECF8BD43CBD-wk-Fact-C94CEA675DFBF6EEACE61ECF8BD43CBD">0</ix:nonFraction></ix:hidden><ix:references><link:schemaRef xlink:href="irbt-20191228.xsd" xlink:type="simple"></link:schemaRef></ix:references><ix:resources><xbrli:context id="FD2019Q4YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2020Q1SharesOutstanding">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2020-01-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</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">0001159167</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-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-30</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">0001159167</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-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:BondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:BondsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:AmazonMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:TwoCustomersMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:TwoCustomersMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:AmazonMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:AmazonMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ToolsDiesAndMoldsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ToolsDiesAndMoldsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">irbt:AllOtherRegionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_StatementGeographicalAxis_country_US">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_StatementGeographicalAxis_country_US">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">irbt:AllOtherRegionsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-04-03</xbrli:startDate>
			<xbrli:endDate>2017-04-03</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-04-03</xbrli:startDate>
			<xbrli:endDate>2017-04-03</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-04-03</xbrli:startDate>
			<xbrli:endDate>2017-04-03</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-10-02</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-04-03</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-10-02</xbrli:startDate>
			<xbrli:endDate>2017-10-02</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-10-02</xbrli:startDate>
			<xbrli:endDate>2017-10-02</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-10-02</xbrli:startDate>
			<xbrli:endDate>2017-10-02</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-10-02</xbrli:startDate>
			<xbrli:endDate>2017-10-02</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OperatingExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentedTechnologyMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentedTechnologyMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
				<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-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
				<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-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</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:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2018Q1RepurchaseDate">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-02-27</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="D2017Q2May">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-05-01</xbrli:startDate>
			<xbrli:endDate>2017-05-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2017Q2May">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-05-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="I2018Q2SD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-05-23</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2017-12-30</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2016-12-31</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<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-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</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-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-10-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2018Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2018-12-29</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:instant>2019-12-28</xbrli:instant>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
				<xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:DomesticDestinationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:GeographicDistributionForeignMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:GeographicDistributionForeignMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:DomesticDestinationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:DomesticDestinationMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
			<xbrli:segment>
				<xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:GeographicDistributionForeignMember</xbrldi:explicitMember>
			</xbrli:segment>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-01-01</xbrli:startDate>
			<xbrli:endDate>2017-12-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q3QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-06-30</xbrli:startDate>
			<xbrli:endDate>2019-09-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q4QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-09-30</xbrli:startDate>
			<xbrli:endDate>2018-12-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q4QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-09-29</xbrli:startDate>
			<xbrli:endDate>2019-12-28</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q3QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-07-01</xbrli:startDate>
			<xbrli:endDate>2018-09-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q2QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-04-01</xbrli:startDate>
			<xbrli:endDate>2018-06-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q1QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2018-12-30</xbrli:startDate>
			<xbrli:endDate>2019-03-30</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2019Q2QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2019-03-31</xbrli:startDate>
			<xbrli:endDate>2019-06-29</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:context id="FD2018Q1QTD">
		<xbrli:entity>
			<xbrli:identifier scheme="http://www.sec.gov/CIK">0001159167</xbrli:identifier>
		</xbrli:entity>
		<xbrli:period>
			<xbrli:startDate>2017-12-31</xbrli:startDate>
			<xbrli:endDate>2018-03-31</xbrli:endDate>
		</xbrli:period>
	</xbrli:context><xbrli:unit id="number">
		<xbrli:measure>xbrli:pure</xbrli:measure>
	</xbrli:unit><xbrli:unit id="shares">
		<xbrli:measure>xbrli:shares</xbrli:measure>
	</xbrli:unit><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="usd">
		<xbrli:measure>iso4217:USD</xbrli:measure>
	</xbrli:unit><xbrli:unit id="jpy">
		<xbrli:measure>iso4217:JPY</xbrli:measure>
	</xbrli:unit><xbrli:unit id="vote">
		<xbrli:measure>irbt:vote</xbrli:measure>
	</xbrli:unit><xbrli:unit id="plan">
		<xbrli:measure>irbt:plan</xbrli:measure>
	</xbrli:unit></ix:resources></ix:header></div><div><a id="s76DD2D57271756DFA41A4CA19A9E47EB"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="1"></td></tr><tr><td style="width:100%;"></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:2px solid #000000;border-bottom:1px solid #000000;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:4px;text-align:center;font-size:18pt;"><span style="font-family:inherit;font-size:18pt;font-weight:bold;">UNITED STATES</span></div><div style="line-height:120%;padding-top:4px;text-align:center;font-size:18pt;"><span style="font-family:inherit;font-size:18pt;font-weight:bold;">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="line-height:120%;text-align:center;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;font-weight:bold;">Washington,&#160;D.C. 20549</span></div><div style="line-height:120%;text-align:center;font-size:18pt;"><span style="font-family:inherit;font-size:18pt;font-weight:bold;">Form&#160;</span><span><ix:nonNumeric id="d27570320e629-wk-Fact-8BF2697CAB40DE5AE4EA2435202FCB14" name="dei:DocumentType" contextRef="FD2019Q4YTD"><span style="font-size:18pt;font-weight:bold;">10-K</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:18pt;font-weight:bold;"> </span></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(Mark One)</span></div><div style="line-height:120%;font-size:12pt;"><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:8%;"></td><td style="width:92%;"></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:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e649-wk-Fact-4CDF060ECB6ACB3EBCCBF2E1D9F5D9AD" name="dei:DocumentAnnualReport" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9745;</ix:nonNumeric></span></span></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:12pt;"><span style="font-family:inherit;font-size:12pt;font-weight:bold;">ANNUAL REPORT PURSUANT TO SECTION&#160;13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">For the fiscal year ended </span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"><span><span style="white-space:nowrap"><ix:nonNumeric id="d27570320e659-wk-Fact-3367F795FAFD0D8D49D335E48F96FFB3" name="dei:DocumentPeriodEndDate" contextRef="FD2019Q4YTD" format="ixt:datemonthdayyearen">December 28, 2019</ix:nonNumeric></span></span></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;">  </span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:12pt;"><span style="font-family:inherit;font-size:12pt;font-weight:bold;">OR</span></div><div style="line-height:120%;font-size:12pt;"><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:8%;"></td><td style="width:92%;"></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:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e678-wk-Fact-67B3ABD1D7021C7D32E0F2E27283296A" name="dei:DocumentTransitionReport" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span></span></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:12pt;"><span style="font-family:inherit;font-size:12pt;font-weight:bold;">TRANSITION REPORT PURSUANT TO SECTION&#160;13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Commission file no.&#160;</span><span><ix:nonNumeric id="d27570320e688-wk-Fact-91A8202AC72CFC3174C3248BB9B4F6FA" name="dei:EntityFileNumber" contextRef="FD2019Q4YTD"><span style="font-weight:bold;">001-36414</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:center;font-size:24pt;"><span><ix:nonNumeric id="d27570320e695-wk-Fact-D7EFD9FC39452C84460E243712C6D04B" name="dei:EntityRegistrantName" contextRef="FD2019Q4YTD"><span style="font-size:24pt;font-weight:bold;">iROBOT CORPORATION</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:24pt;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-style:italic;">(Exact name of registrant as specified in its charter)</span></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:49%;"></td><td style="width:1%;"></td><td style="width:50%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;"><span><ix:nonNumeric id="d27570320e716-wk-Fact-2E78C6506410DB55D0E8ED5382F8634D" name="dei:EntityIncorporationStateCountryCode" contextRef="FD2019Q4YTD" format="ixt-sec:stateprovnameen">Delaware</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;"><span><ix:nonNumeric id="d27570320e726-wk-Fact-6E50222DCC2F991B0626ED52D0F56E76" name="dei:EntityTaxIdentificationNumber" contextRef="FD2019Q4YTD">77-0259335</ix:nonNumeric></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-style:italic;">(State or other jurisdiction of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-style:italic;">incorporation or organization)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-style:italic;">(I.R.S. Employer</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-style:italic;">Identification No.)</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span><ix:nonNumeric id="d27570320e753-wk-Fact-562D18A23E786C9C3384ED6B49D6B177" name="dei:EntityAddressAddressLine1" contextRef="FD2019Q4YTD"><span style="font-weight:bold;">8 Crosby Drive</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span><ix:nonNumeric id="d27570320e759-wk-Fact-C9EA9891DD564C1EEE3BED6EE8B29A93" name="dei:EntityAddressCityOrTown" contextRef="FD2019Q4YTD"><span style="font-weight:bold;">Bedford</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;">, </span><span><ix:nonNumeric id="d27570320e764-wk-Fact-D28A66CEEA38CC9A1EE4ED6F75DDD1F3" name="dei:EntityAddressStateOrProvince" contextRef="FD2019Q4YTD"><span style="font-weight:bold;">MA</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"> </span><span><ix:nonNumeric id="d27570320e769-wk-Fact-9219D4BC89B968BC5EBEED701F444AC7" name="dei:EntityAddressPostalZipCode" contextRef="FD2019Q4YTD"><span style="font-weight:bold;">01730</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">(Address of principal executive offices, including zip code)</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">(</span><span><ix:nonNumeric id="d27570320e780-wk-Fact-FAC69070E66460D41982ED70EDB2BA7D" name="dei:CityAreaCode" contextRef="FD2019Q4YTD"><span style="font-weight:bold;">781</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;">)&#160;</span><span><ix:nonNumeric id="d27570320e785-wk-Fact-4DC24AEAF07F751E5B08ED717A2AFB8F" name="dei:LocalPhoneNumber" contextRef="FD2019Q4YTD"><span style="font-weight:bold;">430-3000</span></ix:nonNumeric></span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">(Registrant&#8217;s telephone number, including area code)</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">_______________________________________________&#160;</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Securities registered pursuant to Section 12(b) of the Act:</span></div><div style="line-height:120%;padding-top:6px;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="3"></td></tr><tr><td style="width:32%;"></td><td style="width:31%;"></td><td style="width:37%;"></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-left:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Title of each class</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-left:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Trading Symbol(s)</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Name of each exchange on which registered</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-left:1px solid #000000;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e831-wk-Fact-7BD9B75B4B763DB24865ED5987D0E8E6" name="dei:Security12bTitle" contextRef="FD2019Q4YTD">Common Stock, $0.01 par value</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-left:1px solid #000000;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e836-wk-Fact-919214A1CCDE899BEA5DED59CF77331E" name="dei:TradingSymbol" contextRef="FD2019Q4YTD">IRBT</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-left:1px solid #000000;border-right:1px solid #000000;border-top:1px solid #000000;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e841-wk-Fact-0E344B0D6F6B20513B27ED5A2B301327" name="dei:SecurityExchangeName" contextRef="FD2019Q4YTD" format="ixt-sec:exchnameen">The Nasdaq Stock Market LLC</ix:nonNumeric></span></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Securities registered pursuant to Section 12(g) of the Act: None</span></div><div style="line-height:120%;padding-top:16px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Indicate by check-mark if the registrant is a well-known seasoned issuer, as defined in Rule&#160;405 of the Securities Act.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e851-wk-Fact-19677840A73C3CDAC15BED72568494DB" name="dei:EntityWellKnownSeasonedIssuer" contextRef="FD2019Q4YTD">Yes</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#254;</span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#168;</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Indicate by check-mark if the registrant is not required to file reports pursuant to Section&#160;13 or Section&#160;15(d) of the Act.&#160;&#160;&#160;&#160;Yes&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#168;</span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e868-wk-Fact-5D15FD2F95961EF5532AED74048BAF9A" name="dei:EntityVoluntaryFilers" contextRef="FD2019Q4YTD">No</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#254;</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">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&#160;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&#160;days.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e877-wk-Fact-C6A75D6B2A3ECDEA869DED749FEBA8EB" name="dei:EntityCurrentReportingStatus" contextRef="FD2019Q4YTD">Yes</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#254;</span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#168;</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule&#160;405 of Regulation&#160;S-T (&#167;&#160;232.405 of this chapter) during the preceding 12&#160;months (or for such shorter period that the registrant was required to submit such files).&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e890-wk-Fact-837CF0FC678A2ABA45FDED753374197D" name="dei:EntityInteractiveDataCurrent" contextRef="FD2019Q4YTD">Yes</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#254;</span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#168;</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:Wingdings;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">       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 &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act. </span></div><div style="line-height:120%;padding-top:6px;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:19%;"></td><td style="width:55%;"></td><td style="width:23%;"></td><td style="width:3%;"></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e919-wk-Fact-467616A80E02AFF07B5FED610CB3FADC" name="dei:EntityFilerCategory" contextRef="FD2019Q4YTD" format="ixt-sec:entityfilercategoryen">Large accelerated filer</ix:nonNumeric></span></span></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;"><span style="font-family:Wingdings;font-size:10pt;">&#253;</span></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;"><span style="font-family:inherit;font-size:10pt;">Accelerated&#160;filer</span></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;"><span style="font-family:Wingdings;font-size:10pt;">&#168;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Non-accelerated filer</span></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;"><span style="font-family:Wingdings;font-size:10pt;">&#168;</span></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;"><span style="font-family:inherit;font-size:10pt;">Smaller&#160;reporting&#160;company</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e976-wk-Fact-196C70333B2A388710A6ED680F49D190" name="dei:EntityShellCompany" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Emerging growth company</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e1018-wk-Fact-EF8D0ABD6D9172438E4EED6680C87D25" name="dei:EntityEmergingGrowthCompany" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. </span><span style="font-family:Wingdings;font-size:10pt;">&#168;</span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule&#160;12b-2 of the Exchange Act).&#160;&#160;&#160;&#160;Yes&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27570320e1034-wk-Fact-196C70333B2A388710A6ED680F49D190" name="dei:EntityShellCompany" contextRef="FD2019Q4YTD" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="font-family:Wingdings;font-size:10pt;">&#254;</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate market value of the Common Stock held by nonaffiliates of the registrant was approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27570320e1043-wk-Fact-3A55F51A4D235E28C842EDC2E8CF06D1" name="dei:EntityPublicFloat" contextRef="FI2019Q4" unitRef="usd" decimals="-8" scale="9" format="ixt:numdotdecimal">2.5</ix:nonFraction> billion</span></span><span style="font-family:inherit;font-size:10pt;"> based on the last reported sale of the Common Stock on The Nasdaq Global Select Market on June 28, 2019, the last business day of the registrant's most recently completed second fiscal quarter.</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">January&#160;31, 2020</span><span style="font-family:inherit;font-size:10pt;">, there were </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27570320e1054-wk-Fact-839B393C8F1C2BF86FE5EDC3C3ADA258" name="dei:EntityCommonStockSharesOutstanding" contextRef="I2020Q1SharesOutstanding" unitRef="shares" decimals="0" scale="0" format="ixt:numdotdecimal">28,352,390</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;">&#160;shares of the registrant&#8217;s Common Stock outstanding.</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">DOCUMENTS INCORPORATED BY REFERENCE</span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The registrant intends to file a definitive Proxy Statement pursuant to Regulation&#160;14A within 120&#160;days of the end of the fiscal year ended </span><span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">. Portions of such Proxy Statement are incorporated by reference into Part&#160;III of this Form&#160;10-K.</span></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="1"></td></tr><tr><td style="width:100%;"></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;border-bottom:2px solid #000000;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><hr style="page-break-after:always"></hr><div><a id="sE6F577D4997B52BA88B7BB44D7C061B7"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ANNUAL REPORT ON FORM&#160;10-K</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Year Ended </span><span style="font-family:inherit;font-size:10pt;font-weight:bold;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-weight:bold;"> </span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">TABLE OF CONTENTS</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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:8%;"></td><td style="width:82%;"></td><td style="width:10%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Page</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Part&#160;I</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Item&#160;1.</span></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:inherit;font-size:10pt;" href="#s82154F550CD6559AAD74781FAAE43551"><span style="font-family:inherit;font-size:10pt;">Business</span></a></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:inherit;font-size:10pt;" href="#s82154F550CD6559AAD74781FAAE43551">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="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Item&#160;1A.</span></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:inherit;font-size:10pt;" href="#s6A225B862ADD5FE98AD13155E7F25164"><span style="font-family:inherit;font-size:10pt;">Risk Factors</span></a></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:inherit;font-size:10pt;" href="#s6A225B862ADD5FE98AD13155E7F25164">10</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 1B.</span></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:inherit;font-size:10pt;" href="#s3FBA1627B3EB516FBED9BD0B0B12E5D9"><span style="font-family:inherit;font-size:10pt;">Unresolved Staff Comments</span></a></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:inherit;font-size:10pt;" href="#s3FBA1627B3EB516FBED9BD0B0B12E5D9">23</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 2.</span></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:inherit;font-size:10pt;" href="#s139AF4E8FAC15D9DB525E56A5744064E"><span style="font-family:inherit;font-size:10pt;">Properties</span></a></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:inherit;font-size:10pt;" href="#s139AF4E8FAC15D9DB525E56A5744064E">23</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 3.</span></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:inherit;font-size:10pt;" href="#s1B7ACF4499E15309973ADD67D4776E3F"><span style="font-family:inherit;font-size:10pt;">Legal Proceedings</span></a></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:inherit;font-size:10pt;" href="#s1B7ACF4499E15309973ADD67D4776E3F">23</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 4.</span></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:inherit;font-size:10pt;" href="#s86BC4C469B6A5B47B6BB3FEE0A4F09F5"><span style="font-family:inherit;font-size:10pt;">Mine Safety Disclosures</span></a></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:inherit;font-size:10pt;" href="#s86BC4C469B6A5B47B6BB3FEE0A4F09F5">24</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:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Part&#160;II</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Item 5.</span></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:inherit;font-size:10pt;" href="#s4D169E9687065B81972C694350C91B0E"><span style="font-family:inherit;font-size:10pt;">Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</span></a></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:inherit;font-size:10pt;" href="#s4D169E9687065B81972C694350C91B0E">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="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Item 6.</span></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:inherit;font-size:10pt;" href="#s65781376856B52BDA19C10F9DC90AF1B"><span style="font-family:inherit;font-size:10pt;">Selected Financial Data</span></a></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:inherit;font-size:10pt;" href="#s65781376856B52BDA19C10F9DC90AF1B">26</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 7.</span></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:inherit;font-size:10pt;" href="#s097C5B5D68985563AC369336969B825C"><span style="font-family:inherit;font-size:10pt;">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></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:inherit;font-size:10pt;" href="#s097C5B5D68985563AC369336969B825C">27</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 7A.</span></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:inherit;font-size:10pt;" href="#s3EBE48DE8CEE57719AE8B98526DC7FC7"><span style="font-family:inherit;font-size:10pt;">Quantitative and Qualitative Disclosures about Market Risk</span></a></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:inherit;font-size:10pt;" href="#s3EBE48DE8CEE57719AE8B98526DC7FC7">39</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 8.</span></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:inherit;font-size:10pt;" href="#sA229D6A7A4A553E0B6CF929A8ED7A48F"><span style="font-family:inherit;font-size:10pt;">Financial Statements and Supplementary Data</span></a></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:inherit;font-size:10pt;" href="#sA229D6A7A4A553E0B6CF929A8ED7A48F">40</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 9.</span></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:inherit;font-size:10pt;" href="#s6EF72555CAFD5BD9BD0F70C5B442141E"><span style="font-family:inherit;font-size:10pt;">Changes in and Disagreements with Accountants on Accounting and Financial Disclosure</span></a></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:inherit;font-size:10pt;" href="#s6EF72555CAFD5BD9BD0F70C5B442141E">74</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 9A.</span></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:inherit;font-size:10pt;" href="#sD122AC8DEA3052F09C4524CA4B432150"><span style="font-family:inherit;font-size:10pt;">Controls and Procedures</span></a></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:inherit;font-size:10pt;" href="#sD122AC8DEA3052F09C4524CA4B432150">74</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 9B.</span></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:inherit;font-size:10pt;" href="#s00BC0E7DE5035ABFAA819096DFA01B04"><span style="font-family:inherit;font-size:10pt;">Other Information</span></a></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:inherit;font-size:10pt;" href="#s00BC0E7DE5035ABFAA819096DFA01B04">75</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:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Part&#160;III</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Item 10.</span></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:inherit;font-size:10pt;" href="#sF459F9ABE18852169DE87E1BAEC24FA2"><span style="font-family:inherit;font-size:10pt;">Directors, Executive Officers and Corporate Governance</span></a></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:inherit;font-size:10pt;" href="#sF459F9ABE18852169DE87E1BAEC24FA2">75</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 11.</span></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:inherit;font-size:10pt;" href="#s4A746090060552C78C7052E576B61DAD"><span style="font-family:inherit;font-size:10pt;">Executive Compensation</span></a></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:inherit;font-size:10pt;" href="#s4A746090060552C78C7052E576B61DAD">75</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 12.</span></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:inherit;font-size:10pt;" href="#s5F89FF37CB055AB9945130C2B8377D79"><span style="font-family:inherit;font-size:10pt;">Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</span></a></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:inherit;font-size:10pt;" href="#s5F89FF37CB055AB9945130C2B8377D79">75</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 13.</span></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:inherit;font-size:10pt;" href="#s329BFB175F0B5FD4B014F4AF087158B1"><span style="font-family:inherit;font-size:10pt;">Certain Relationships and Related Transactions, and Directors Independence</span></a></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:inherit;font-size:10pt;" href="#s329BFB175F0B5FD4B014F4AF087158B1">75</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 14.</span></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:inherit;font-size:10pt;" href="#sCD4F354D17E6583AA3F1F0B3B4BA02A6"><span style="font-family:inherit;font-size:10pt;">Principal Accounting Fees and Services</span></a></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:inherit;font-size:10pt;" href="#sCD4F354D17E6583AA3F1F0B3B4BA02A6">75</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:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Part&#160;IV</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Item 15.</span></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:inherit;font-size:10pt;" href="#s3A702ABC43E75A549F4B25457E8F643E"><span style="font-family:inherit;font-size:10pt;">Exhibits, Financial Statement Schedules</span></a></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:inherit;font-size:10pt;" href="#s3A702ABC43E75A549F4B25457E8F643E">76</a></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;"><span style="font-family:inherit;font-size:10pt;">Item 16.</span></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:inherit;font-size:10pt;" href="#s8214D5677E63506EAC92514B59938F5E"><span style="font-family:inherit;font-size:10pt;">Form 10-K Summary</span></a></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:inherit;font-size:10pt;" href="#s8214D5677E63506EAC92514B59938F5E">79</a></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:22px;padding-top:22px;text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2</span></div></div><hr style="page-break-after:always"></hr><div><a id="s17E74C6631555E848B93C07275A36363"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">PART&#160;I</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s82154F550CD6559AAD74781FAAE43551"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;1.</span><span style="font-family:inherit;font-size:10pt;">&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">BUSINESS</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">This Annual Report on Form&#160;10-K (this "Annual Report") contains forward-looking statements. All statements other than statements of historical facts contained in this Annual Report, including statements regarding our future results of operations and financial position, business strategy, plans and objectives of management for future operations, and plans for product development, launches and manufacturing are forward-looking statements. These statements involve known and unknown risks, uncertainties and other factors that may cause our actual results, performance or achievements to be materially different from any future results, performance or achievements expressed or implied by the forward-looking statements. We discuss certain of these risks in greater detail in the "Risk Factors" section and elsewhere in this Annual Report. Also, these forward-looking statements speak only as of the date of this Annual Report, and we have no plans to update our forward-looking statements to reflect events or circumstances occurring after the date of this Annual Report. We caution readers not to place undue reliance upon any such forward-looking statements.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">iRobot and its stylized logo, Roomba, Clean Base, NorthStar, Create, iAdapt, Aware, Home Base, Looj, Braava, Braava jet, AeroForce, Better Together, Mirra, Root, Terra, vSLAM and Virtual Wall are trademarks of iRobot Corporation (together with its subsidiaries, "iRobot", the "Company", "we", "us" or "our"). </span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Overview</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">iRobot is a leading global consumer robot company that designs and builds robots that empower people to do more both inside and outside the home. Our consumer robots help people find smarter ways to clean and accomplish more in their daily lives. iRobot's portfolio of solutions features proprietary technologies for the connected home and advanced concepts in cleaning, mapping and navigation, human-robot interaction, and physical solutions. Leveraging this portfolio, our engineers are building an ecosystem of robots to empower the smart home. For more than 25 years, we have been a pioneer in the robotics and consumer products industries.  </span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Since our founding in 1990, we have developed expertise in the disciplines necessary to design, build, sell and support durable, high-performance and cost-effective robots through the close integration of software, electronics and hardware. Our core technologies serve as reusable building blocks that we adapt and expand to create next-generation robotic platforms. We believe that this approach accelerates the time to market, while also reducing the costs and risks associated with product development. Our significant expertise in consumer needs, robot design, engineering, and smart home technologies and trends positions us to capitalize on the growth we expect in the market for robot-based consumer products. Since the introduction of the Roomba robotic vacuum cleaner ("RVC") in 2002, we have sold more than 30&#160;million consumer robots worldwide to become a global, market-leading consumer robotics innovator with a strong presence in major geographic regions worldwide.  </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During 2017, we expanded our global operations with the acquisition of two of our major distributors in Japan and Europe. In April 2017, we acquired the iRobot-related distribution business of Sales On Demand Corporation ("SODC"), based in Tokyo, Japan for approximately $16.6 million in cash. In October 2017, we acquired our largest European distributor, Robopolis SAS ("Robopolis"), a French company, for a final purchase price of $169.4 million in cash, net of acquired cash of $38.0 million. These acquisitions provided us more direct control of 75% of our global revenue through a direct presence in countries such as Austria, Belgium, France, Germany, Japan, the Netherlands, Portugal and Spain. Following the completion of the SODC and Robopolis acquisitions, we integrated these organizations into our company, and continue to take steps to consolidate various systems that we believe will further streamline and automate key processes.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In 2019, iRobot sold more than $1.2 billion in consumer robots while navigating more challenging market conditions marked by intensified price competition in EMEA and the United States, and more moderate RVC growth in the United States due in part to the direct and indirect impacts of higher tariffs on RVCs made in and imported from China. Our commitment to innovation and funding critical research and development projects continued to yield tangible results through new product launches and new and enhanced features and functionality. In addition to launching the Roomba i7 and i7+ in major international markets during 2019, we introduced our deepest cleaning RVCs, the Roomba s9 and s9+, and the Braava jet m6, our advanced robotic mop. We also took steps to commercialize our robotic lawn mower during 2019. Other highlights in 2019 included the commencement of production at a new Roomba manufacturing facility in Malaysia, the implementation of new pricing and promotional tactics aimed at restoring U.S. RVC growth and defending our leadership position in EMEA, and the acquisition of Root Robotics, Inc. ("Root Robotics"), which enhances our commitment to Science, Technology, Engineering and Math ("STEM") through new educational robots. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our total revenue for 2019 was </span><span style="font-family:inherit;font-size:10pt;">$1,214.0 million</span><span style="font-family:inherit;font-size:10pt;">, which represents an </span><span style="font-family:inherit;font-size:10pt;">11.1%</span><span style="font-family:inherit;font-size:10pt;"> increase from revenue of </span><span style="font-family:inherit;font-size:10pt;">$1,092.6 million</span><span style="font-family:inherit;font-size:10pt;"> for 2018. Domestic revenue grew $42.6&#160;million, or 7.6%, and international revenue increased by $78.8&#160;million, or 14.8%, primarily as a result of sales of new products that have been launched since the second half of 2018.   </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Strategy</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In 2002, iRobot created the home robot cleaning category with the introduction of its Roomba vacuuming robot. Today, we are a global enterprise that has sold more than 30 million consumer robots worldwide, including more than </span><span style="font-family:inherit;font-size:10pt;">nine</span><span style="font-family:inherit;font-size:10pt;"> million connected robots. Our long-term strategy is to grow RVC category leadership by increasing the penetration of Roomba in existing markets worldwide, diversify beyond RVCs with our Braava robot mop and Terra robot mower, and continue to develop and launch new products into current and new markets. As our customer base grows, iRobot is creating an ecosystem of intelligent, connected robots with increasingly powerful new features and better performance that are designed for integration with other connected devices that empower the smart home.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">To successfully execute our plan for 2020, including driving revenue growth, further diversifying our product portfolio, and positioning ourselves for improved profitability in 2021 and beyond, we plan to execute against the following priorities:  </span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:77px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:53px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Continue expanding Roomba&#8217;s global household penetration:  </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deliver on our product and digital roadmaps that can further differentiate Roomba and elevate the user experience, in part by leveraging our substantial and ongoing investment in software;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Fuel near-term growth and defend RVC market share in the United States and abroad through a combination of pricing, promotion and marketing initiatives; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Evolve our go-to-market capabilities and increase direct sales to customers through our HOME App and on irobot.com by leveraging our large, growing and engaged base of customers worldwide. </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:77px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:53px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Pursue product diversification and build position within the smart home ecosystem:</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Drive adoption of Braava through both traditional promotional and marketing initiatives as well as through new marketing programs that capitalize on the large and growing installed base of Roomba customers; </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Enhance Terra&#8217;s capabilities along with developing and advancing the go-to-market and sales plans that will enable us to commercialize this robot; </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Establish the necessary partnerships and technology alliances that will enable our products to help consumers enjoy greater benefits from the smart home; and  </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Support the growth of iRobot&#8217;s educational robot product offerings as an extension of our STEM efforts and ongoing commitment to making robotic technology more accessible to educators, students and parents.</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:77px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:53px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Improve long-term operational profitability: </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Continuously cost-optimize the sourcing and integration of key product components and sub-assemblies, and increasingly automate the manufacturing process as part of our efforts to lower production costs;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Mitigate exposure to tariffs on products imported from China through a dual-track strategy of pursuing an exemption to those tariffs and ramping production volumes in Malaysia; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:125px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:101px;"><span style="font-family:inherit;font-size:10pt;">&#9702;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Control spending while continuing to make investments in areas that we believe are critical to long-term success.</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Technology </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Since introducing the Roomba in 2002, we have continuously pursued innovation and introduced a wide of range of powerful features and functionality that have been favorably received by customers, helped extend our consumer robot technology and category leadership, and have further expanded and diversified our product portfolio. Over the past several years, we have focused on research and development initiatives aimed at advancing overall cleaning efficacy and performance, strengthening our robots&#8217; mapping and navigation capabilities, enabling our Roomba and Braava robots to work together, improving user interaction via cloud connectivity and app development, and facilitating integration between our products and other connected devices as part of a smart home ecosystem.  </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We plan to continue to leverage opportunities, enabled by our growing connected product portfolio, to invest in developing technologies and interfaces for our products to provide a convenient, personalized, feature-rich and effective user experience. By leveraging our robust connectivity and cloud infrastructure through Amazon Web Services and the ever-increasing processing power in our robots, we have built a Home Knowledge Cloud that can quickly and cost-effectively support over-the-air delivery of new digital features and enhanced functionality for customers globally. This infrastructure also allows us to collect valuable performance data that helps us improve the effectiveness of our support teams, informs our product roadmaps and facilitates integration with other connected devices in the smart home. iRobot plans to continue to identify additional ways to advance the smart home experience by enabling a broader understanding of the home&#8217;s space, enabled through Roomba&#8217;s spatial awareness of the home.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Across our expanding range of consumer robots, we are dedicated to developing market-leading robotic solutions that provide compelling value to consumers worldwide. We believe that from our customers' perspective, the core value of our </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">4</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">robots is the ability to efficiently and effectively perform a physical mission - the task for which the robot was initially purchased. In addition, we focus on adding new features and functionality that allow our robots to perform longer, without customer interaction, making them fit more seamlessly into our customers' lifestyles and easier to use.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Products</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We sell various products designed for use inside and outside of the home. We believe our home robot cleaning products deliver compelling and unique value to customers by delivering a better way to clean that frees people from repetitive, time consuming home cleaning tasks. To ensure the continued acceptance of our robots, we plan to continue to invest in the digital, data and physical products necessary to further improve the robots' autonomy to complete missions, and enhance the robots' performance and ease of use so that the robots fit seamlessly into the lifestyle of their owners. During 2019, we took important steps to deliver robots that can work together to vacuum and mop at the direction of the user. We also delivered new digital features that provide for a more personalized and more efficient cleaning experience, including recommendations for maintenance and cleaning schedules, specified room cleaning missions versus cleaning entire floors, and recharging just enough to complete the mission. In addition, we continued to enhance the mapping and spatial awareness capabilities of our consumer cleaning robots, which we believe is critical for improving the smart home experience by enabling a broader range of connected devices in the home to work more seamlessly together. Our products consist of the following robot families: </span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Roomba </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We currently offer multiple Roomba floor vacuuming robots at varying price points ranging from approximately $250 to $1,099 based upon features and performance characteristics. The Roomba family of robotic vacuum cleaners encompass the following product series:</span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">600 Series: The Roomba 600 series robots offer a three-stage cleaning system that thoroughly vacuums every section of the floor multiple times, as well as a brush design that enables the robot to handle fibers like hair, pet fur, lint and carpet fuzz. We offer versions of the 600 Series with and without WiFi connectivity.  </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">e5 Series: Introduced in September 2018, the e5 is an affordable, highly featured product with WiFi connectivity.  The e5 Series offers iRobot&#8217;s Dirt Detect technology, dual multi-surface brushes, and a high efficiency filter to handle pet allergens.  The e5 Series&#8217; navigation technology helps ensure that the robot thoroughly vacuums every section of the floor multiple times.</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">900 Series: The Roomba 900 series robots help keep floors cleaner throughout the entire home with intelligent visual navigation, recharge and resume capability, and clean map reporting via the iRobot HOME App to show where the Roomba cleaned and provide other performance data such as cleaning duration and coverage area.  </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">i7 Series:  Introduced in September 2018, the i7 Series brought a new level of intelligence and automation to robotic vacuum cleaners with the ability to learn, map and adapt to a home&#8217;s floor plan and 10 times more suction power than the 600 Series. The Roomba i7+ includes all the features of i7 plus the ability for the robot to empty its own bin into the Clean Base with Automatic Dirt Disposal. This brings a level of automation that allows users to forget about vacuuming for weeks at a time. </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">s9 Series: Introduced in May 2019, the s9 Series represents the most powerful, deepest cleaning Roomba to date with 40 times more suction power than the 600 Series, advanced sensors to automatically increase suction on rugs or carpets, new brushes that further improve the robot&#8217;s ability to clean corners and along walls, and sophisticated navigation and mapping capabilities for efficient, customized room cleaning. The Roomba s9+ includes all of the features of the s9 plus the Clean Base with Automatic Dirt Disposal, which uses an anti-allergen system that traps pollen and mold allergens and prevents them from escaping the robot or the Clean Base Charging Station.  </span></div></td></tr></table><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Braava</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We currently offer the Braava family of automatic floor mopping robots designed exclusively for hard-surface floors at price points ranging from $199 to $499. The Braava robots automatically dust and damp mop hard-surface floors using popular cleaning cloths or our specially designed reusable microfiber cloths and include a special reservoir that dispenses liquid throughout the cleaning cycle to keep the cloth damp. The Braava family of floor mopping robots encompass the following product series: </span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">200 Series: The Braava jet 200 series robot mop navigates under and around objects and furniture, reaches into corners and uses Precision Jet Spray and a vibrating clean head to remove dirt and stains. </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">300 Series: With the ability to operate in separate mop or sweep modes, the Braava jet 300 series robot mop offers greater coverage than the 200 Series and is compatible with a wide range of iRobot and third-party cleaning cloths.  </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:82px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:58px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">m Series: Introduced in May 2019, the Braava jet m Series is the most advanced Braava robot mop yet, with Roomba-like features and functionality, including a dedicated charging station and the same navigation and mapping technology found in the most advanced Roombas with extensive coverage and strong dirt and stain </span></div></td></tr></table><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">5</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-left:82px;text-align:left;"><span style="font-family:inherit;font-size:10pt;">removal capability. Leveraging ImprintLink technology allows the Braava jet m Series and Roomba 900, i7, and s9 robots to automatically clean in sequence - vacuuming and then mopping. </span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Terra</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We are in the process of bringing a new, highly differentiated robotic lawn mower product to the consumer marketplace. Unlike current robotic lawn mowers that rely on dedicated boundary wires to keep the lawn mower confined to a designated area, the Terra t7 is being designed with a state-of-the-art mapping and navigation system that provides greater flexibility to determine where it will mow as well as avoid obstacles and cut in efficient, straight lines. We conducted beta trials in 2019 in both Germany and the United States and we plan to use the feedback gained during those trials to further enhance Terra&#8217;s capabilities and advance the go-to-market and sales activities necessary to support limited online sales over the coming quarters, followed by an expected larger scale commercial launch in key regional markets.   </span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Root</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">With the acquisition of Root Robotics in April 2019, we also offer a robot designed to help children learn how to code. The addition of the Root Robotics team helps broaden the impact of our STEM efforts and reinforces our commitment to making robotic technology more accessible to educators, students and parents.The Root coding robot, priced at $199, is designed to make coding easy and natural to learn. Using the engaging Root Coding App, kids of any age can learn coding fundamentals while they play, explore, and create.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Strategic Alliances</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:11pt;"><span style="font-family:inherit;font-size:10pt;">In addition to our internal technology development, we leverage relevant robotic technologies through licensing, acquisitions, venture investments and/or other partnerships. These strategic alliances are an important part of our product development, advanced research and distribution strategies. We rely on strategic alliances to provide technology and complementary product offerings to drive market adoption of our robotic product</span><span style="font-family:inherit;font-size:11pt;">s</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We seek to form relationships with organizations that can provide best-in-class technology or market advantages for establishing iRobot technology. In 2019, we began a Smart Home Partner Program that enables select third parties to partner closely with iRobot in using certain data available in iRobot&#8217;s Home Knowledge Cloud to deliver enhanced product features and customer value. Consistent with our position on customer data privacy, our customer data is not accessible to third parties unless the customer affirmatively opts into the program and acknowledges that this home understanding data will be used in support of these related integrations. Additionally, we are advancing technology alliances with other smart home device companies that will enable our respective products to be integrated more tightly and thereby work together more seamlessly.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Sales and Distribution Channels</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We sell our consumer products through distributor and retail sales channels, as well as our on-line store. For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, sales to non-U.S.&#160;customers accounted for </span><span style="font-family:inherit;font-size:10pt;">50.3%</span><span style="font-family:inherit;font-size:10pt;">, 48.7%, and 48.8% of total revenue, respectively. For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, the Company generated </span><span style="font-family:inherit;font-size:10pt;">21.3%</span><span style="font-family:inherit;font-size:10pt;">, 17.3% and 13.5% of total revenue from one of its retailers (Amazon), respectively. </span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In the United States and Canada, we sell our consumer products primarily through a network of national retailers. Certain smaller domestic retail operations are supported by distributors to whom we sell our products directly. With the acquisition of SODC and Robopolis, iRobot directly services retailers in Japan and countries that were previously serviced by Robopolis, including Austria, Belgium, France, Germany, Netherlands, Portugal and Spain. In support of sales in the United States, Canada, Japan and the seven European countries previously serviced by Robopolis, we maintain in-house sales, marketing and product management teams. In China, retailers are serviced by two local distributors. Due to the special needs of this market, we maintain a local sales, marketing and product team to support the distributors, manage the local marketing plan and meet product needs. Throughout the rest of the world, our products are sold primarily through a network of in-country distributors who resell to retail stores in their respective countries. These distributors are supported by our international sales and product marketing team.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our retail and distributor networks are our primary distribution channels for our products. We have established valuable databases and customer lists that allow us to target directly those consumers most likely to purchase a new robot or upgrade. With Wi-Fi connectivity implemented across Roomba 675 and higher models, iRobot can more directly provide customer support via the iRobot HOME App. In addition, connectivity enables us to provide direct marketing material and push new features/fixes to robots in the field. We believe that we maintain a close connection with our customers in each of our markets, which provides an enhanced position from which to improve our distribution and product offerings.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">6</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Customer Service and Support</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also provide ongoing customer service and support. Consumer customer service representatives, the majority of whom are employees of outsourced service organizations or our distribution partners, are extensively trained on the technical intricacies of our consumer products. Because of the connected nature of our new robot technology, our customer service representatives are able to access robot information remotely to identify issues and behaviors relevant in troubleshooting and addressing customer questions and concerns. </span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Marketing and Brand</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We market our consumer robots to end-user customers through our extensive network of retail partners with the support of our sales and marketing teams as well as in collaborations with in-country distributors. In addition, we sell directly to consumers through iRobot's e-commerce channels around the world. For consumers seeking information about our products, the iRobot website showcases our brand, allows consumers to learn more about our products, including the latest product innovations, and enables direct-to-consumer sales. The website also plays an important after-sales role for owners seeking spare parts and accessories, as well as for trouble-shooting possible issues and contacting customer support. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our marketing strategy is to drive consumer awareness and interest in iRobot's product portfolio, most notably Roomba robot vacuums and Braava robot mops as well as, to a lesser extent, Terra robot lawn mowers. Our sales and marketing expenses represented </span><span style="font-family:inherit;font-size:10pt;">19.1%</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">19.3%</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">18.3%</span><span style="font-family:inherit;font-size:10pt;"> of our total revenue in 2019, 2018 and 2017, respectively. We expect to continue to invest in national advertising, consumer and industry trade shows, direct marketing and public relations to drive consumer demand and further build brand awareness. With over </span><span style="font-family:inherit;font-size:10pt;">nine</span><span style="font-family:inherit;font-size:10pt;"> million connected robots in the field, we continue to explore marketing opportunities that enable us the leverage this large, global and growing installed base of consumers.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Marketing highlights in 2019 included supporting the launches of the Roomba s9/s9+ and Braava jet m6 in most major markets worldwide, the international introduction of the Roomba i7/i7+ and Terra t7 beta trials in Germany and the United States. In addition, we continued to execute critical marketing, public relations and consumer service efforts that complement our traditional demand generation activities in ways that sought to amplify the iRobot and applicable product brands, generate consumer interest in our products and perpetuate customer word-of-mouth, to encourage repeat purchases by existing customers and inspire new customers to buy our products.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In April 2017, we acquired SODC, launching new iRobot offices in Japan. In October 2017, we acquired our largest European distributor, Robopolis, launching new iRobot offices in seven countries, including Austria, Belgium, France, Germany, Netherlands, Portugal and Spain. These acquisitions enabled us to assume greater control and consistency in our approach to all market activities including sales, marketing, branding, channel relationships and customer service. As a result, since completing these acquisitions, we have continued to successfully grow our international revenue and broaden our relationships with on-line and regional retailers in key markets outside of the United States.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Manufacturing</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our core competencies are the design, development and marketing of robots. Our manufacturing strategy is to outsource non-core competencies, such as the production of our robots, to third-party entities skilled in manufacturing. By relying on the outsourced manufacture of our robots, we can focus our engineering expertise on the design of robots and associated technologies.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Manufacturing a new product requires a close relationship between our product designers and the manufacturing organizations. Using multiple engineering techniques, our products are introduced to the selected production facility at an early-development stage and the feedback provided by manufacturing is incorporated into the design before tooling is finalized and mass production begins. As a result, we believe that we can significantly reduce the time required to move a product from its design phase to mass production deliveries, with improved quality and yields.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We outsource the manufacturing of our consumer products to four contract manufacturers with plants in Southern China. In late 2019, we added additional manufacturing capacity in Malaysia with one of our existing contract manufacturers and we anticipate that a second contract manufacturer will be qualified for production in Malaysia in 2020. We expect that manufacturing volumes in Malaysia will ramp up in 2020, including potential production of an additional Roomba model. We believe that manufacturing our products in Malaysia will help mitigate our exposure to current and prospective tariffs on products imported from China. We believe that we have taken steps to diversify our manufacturing so that overall volumes are relatively well balanced across our four contract manufacturers and a substantial majority of volume is dual sourced. Our production processes give us the capacity to produce up to 25,000 robots a day, helping us to meet demand for peak seasons.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Under our agreements with our contract manufacturers, manufacturers supply us with specified quantities of products that align with demand forecasts that we establish based upon historical trends and analysis from our sales and product management functions.  </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">7</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Research and Development</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe that our future success depends upon our ability to continue to develop new products and product accessories, and enhancements to and applications for our existing products. For the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, our research and development expenses were </span><span style="font-family:inherit;font-size:10pt;">$141.6 million</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$140.6 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$113.1 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">11.7%</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">12.9%</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">12.8%</span><span style="font-family:inherit;font-size:10pt;"> of revenue, respectively. We intend to continue our investment in research and development to respond to and anticipate customer needs, and to enable us to introduce new products over the next few years that will continue to address our existing and adjacent market sectors.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our research and development is conducted by teams dedicated to particular projects. Our research and development efforts are primarily located at our headquarters in Bedford, Massachusetts and our office in Pasadena, California.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Competition</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The market for robots is highly competitive, rapidly evolving and subject to changing technologies, shifting customer needs and expectations and the likely increased introduction of new products. A number of established companies have developed robots that compete directly with our product offerings, and many of our competitors have significantly more financial and other resources than we possess. Our robot cleaning competitors include consumer electronics and consumer appliance companies such as Samsung, LG, Panasonic, Xiaomi, Cecotec, Hitachi, Electrolux, Midea and Shark, traditional floor cleaning brands with robotic offerings such as Dyson, Bissell and Hoover, and firms primarily focused on robotic cleaning such as Ecovacs, Roborock, Neato and iLife.  In addition to dedicated robot vacuum and robot mop products, certain robot cleaning products offered by competitors combine the functionality of robot vacuums and mops into a single product.  </span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">While we believe many of our customers purchase our Roomba floor vacuuming robots and Braava mopping robots as a supplement to, rather than a replacement for, their traditional vacuum cleaners and wet floor cleaning methods, we do compete in some cases with providers of traditional cleaning products. We expect that the primary competition for our Terra robot mower will be providers of traditional human-operated lawn mowers and lawn care services. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe that the principal competitive factors in the market for robots include product features, performance for the intended mission, total cost of system operation and overall perceived value, including maintenance and support, ease of use, integration with existing equipment, quality, reliability, customer support, brand and reputation.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our ability to remain competitive will depend to a great extent upon our ongoing performance in the areas of product development and customer support, particularly as it relates to delivering exceptional value to customers. We remain committed to funding the enhancement of our products and the development of new products, as well as investing in the various sales, marketing and support activities we believe are necessary to stimulate customer demand and maintain and improve customer satisfaction. </span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Intellectual Property</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe that our continued success depends in large part on our proprietary technology, the technical competence and ability of our employees to continue to innovate. The ownership of intellectual property rights is an important factor in our business.&#160;This includes patents, copyrights, trademarks, service marks, trade dress and other forms of intellectual property rights in the United States and a number of foreign countries.&#160;The Company currently holds a significant number of patents and has filed numerous additional patent applications. As of December 28, 2019, we held 501 U.S.&#160;patents, more than 1,000 foreign patents, additional design registrations, and have more than 1,500 patent applications pending worldwide.&#160;While our U.S.&#160;patents will begin to expire in 2022, no single intellectual property right is solely responsible for protecting our products. We will continue to file and prosecute patent (or design registration, as applicable) applications when and where appropriate to attempt to protect our rights in our proprietary technologies. We also encourage our employees to continue to invent and develop new technologies so as to maintain our competitiveness in the marketplace. It is possible that our current patents, or patents which we may later acquire, may be successfully challenged or invalidated in whole or in part. It is also possible that we may not obtain issued patents for our pending patent applications or other inventions we seek to protect. In that regard, we sometimes permit certain intellectual property to lapse or go abandoned under appropriate circumstances. It is also possible that we may not develop proprietary products or technologies in the future that are patentable, or that any patent issued to us may not provide us with any competitive advantages, or that the patents of others will harm or altogether preclude our ability to do business.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our registered U.S.&#160;trademarks include iRobot and its stylized logo, Roomba, Clean Base, NorthStar, Create, iAdapt,&#160;Aware, Home Base, Looj, Braava, Braava jet, AeroForce, Better Together, Mirra, Root, Terra, vSLAM and Virtual Wall.&#160;Our marks iRobot, Roomba, Braava, Braava jet, Root, Terra, Virtual Wall, and certain other trademarks, have also been registered in selected foreign countries.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">8</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our means of protecting our proprietary rights may not be adequate, and our competitors may independently develop technology that is similar to ours. Legal protections afford only limited protection for our technology. The laws of many countries do not protect our proprietary rights to as great an extent as do the laws of the United States. Despite our efforts to protect our proprietary rights, unauthorized parties have in the past attempted, and may in the future attempt, to copy aspects of our products or to obtain and use information that we regard as proprietary. Some of our competitors seek to compete primarily through aggressive pricing and low-cost structures while infringing on&#160;our&#160;intellectual property. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October 15, 2019, we initiated a patent infringement lawsuit in federal district court in Massachusetts against SharkNinja Operating LLC and its related entities ("SharkNinja") for infringement of 5 patents for technology related to robotic vacuum cleaners. In addition, we sought a preliminary injunction against SharkNinja for infringement of three U.S. patents. SharkNinja has in parallel sought declarations of non-infringement of thirteen U.S. patents owned by iRobot. On November 26, 2019, the federal district court in Massachusetts denied iRobot's motion for a preliminary injunction.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Previously, in 2017, we initiated a multi-party litigation at the U.S. International Trade Commission ("ITC") as well as in federal district court in Massachusetts based on claims of patent infringement. In November 2018, the ITC issued a Notice of Final Determination confirming that U.S. Patent No. 9,038,233 is valid and infringed, and that the infringing products for bObsweep, Inc., bObsweep&#160;USA, Hoover, and Shenzhen Silver Star Intelligent Technology Co., Ltd. should be barred from importation into&#160;the United States. Prior to the issuance of the Final Determination, iRobot entered into confidential settlements with Shenzhen Zhiyi Technology Co. Ltd. d/b/a iLife, Micro-Star International, Black &amp; Decker, and Matsutek.&#160;</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">There is no guarantee that we will prevail on other patent infringement claims against third parties. Third parties may also design around our proprietary rights, which may render our protected products less valuable, if the design around is favorably received in the marketplace. In addition, if any of our products or the technology underlying our products is covered by third-party patents or other intellectual property rights, we could be subject to various legal actions. We cannot assure you that our products do not infringe patents held by others or that they will not in the future. We have received in the past communications from third parties relating to technologies used in our various robot products that have alleged infringement of patents or violation of other intellectual property rights. Some of these allegations have resulted in actions filed against iRobot in foreign jurisdictions. In response to these communications, we have contacted these third parties to convey our good faith belief that we do not infringe the patents in question or otherwise violate those parties' rights. Where an action has been filed, we will defend iRobot against the allegations.&#160;We cannot assure you that we will not receive further correspondence from these parties, not be subject to additional allegations of infringement from others, and cannot assure you that iRobot will prevail in any ongoing or subsequently filed actions. Litigation may be necessary to enforce our intellectual property rights, to protect our trade secrets, to determine the validity and scope of the proprietary rights of others, or to defend against claims of infringement or invalidity, misappropriation, or other claims. Any such litigation could result in substantial costs and diversion of our resources. Moreover, any settlement of or adverse judgment resulting from such litigation could require us to obtain a license to continue to use the technology that is the subject of the claim, or otherwise restrict or prohibit our use of the technology. Any required licenses may not be available to us on acceptable terms, if at all. If we attempt to design around the technology at issue or to find another provider of suitable alternative technology to permit us to continue offering applicable software or product solutions, our continued supply of software or product solutions could be disrupted or our introduction of new or enhanced software or products could be significantly delayed.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Seasonality</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Historically, we have experienced higher revenue in the second half of the year compared to the first half of the year due in large part to increased demand around the December holiday season. In 2019, 2018 and 2017, our second-half consumer product revenue represented 59.0%, 59.4% and 60.2% of our annual consumer product revenue, respectively. We have also experienced higher selling and marketing expenses in the second half of the year compared to the first half of the year due to increase marketing campaigns to support seasonal holiday demand. In 2019, 2018 and 2017, our selling and marketing expense in the second half of the year represented 58.9%, 63.3% and 61.3% of our selling and marketing expense for full fiscal year, respectively. We expect that the majority of our revenue and selling and marketing expenses will continue to be generated in the second half of any given fiscal year unless or until we successfully introduce new products, such as Terra, that have potential to generate stronger sales during the first half of the year.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">9</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Regulations</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our business requires compliance with a variety of laws and regulations in the United States and abroad regarding privacy, data protection, and data security. In particular, we are subject to numerous U.S. federal, state, and local laws and regulations and foreign laws and regulations regarding privacy and the collection, sharing, use, processing, disclosure, and protection of personal information and other user data, including the General Data Protection Regulation ("GDPR") and California Consumer Privacy Act.&#160;In addition, the global nature of our business operations also creates various domestic and foreign regulatory challenges and subjects us to laws and regulations such as the U.S. Foreign Corrupt Practices Act, the U.K. Bribery Act, and similar anti-bribery and anti-corruption laws in other jurisdictions. Our products may be subject to U.S. export controls, including the United States Department of Commerce&#8217;s Export Administration Regulations, various economic and trade sanctions regulations established by the Treasury Department&#8217;s Office of Foreign Assets Controls and trade policies and tariffs established by the governments of the United States, China and other jurisdictions where we do business.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The laws in each of these areas - in particular those related to data privacy - are continually changing and evolving in unpredictable ways. New laws and regulations in any of these areas, as well as compliance with these laws (and their derivatives) may have an adverse effect on our business. If we fail to comply with these laws, we may be subject to significant liabilities and other penalties.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We are also subject to international and U.S. federal, state, and local laws and regulations designed to protect the environment, regulate energy efficiency and to regulate the discharge of materials into the environment. We believe that our policies, practices, and procedures are properly designed to prevent unreasonable risk of environmental damage and associated financial liability. To date, environmental control regulations have not had a significant adverse effect on our overall operations.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Employees</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of December 28, 2019, we had 1,128&#160;full-time employees. Approximately 31% of our employees are based outside of the United States. None of our employees in the United States are represented by a labor union. In certain foreign subsidiaries, labor unions or workers&#8217; councils represent some of our employees. We believe that we have a good relationship with our employees.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Prior Line of Business</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In 2016, we sold our defense and security business and exited the remote presence business, as part of a strategic initiative to capitalize on the substantial opportunities available to us within consumer robot markets.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Available Information</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We were incorporated in California in August 1990 under the name IS Robotics, Inc. and reincorporated as IS Robotics Corporation in Massachusetts in June 1994. We reincorporated in Delaware as iRobot Corporation in December 2000. We conduct operations and maintain a number of subsidiaries in the United States and abroad, including operations in Austria, Belgium, China, France, Germany, Hong Kong, Japan, Netherlands, Portugal, Spain, and the United Kingdom. We also maintain iRobot Securities Corporation, a Massachusetts securities corporation, to invest our cash balances on a short-term basis. Our website address is www.irobot.com. We have included our website address as an inactive textual reference only. The information on, or that can be accessed through, our website is not part of, or incorporated by reference into, this Annual Report. Our Annual Report on Form&#160;10-K, Quarterly Reports on Form&#160;10-Q, Current Reports on Form&#160;8-K and amendments to those reports filed or furnished pursuant to Section&#160;13(a) or 15(d) of the Securities Exchange Act of 1934, as amended (the "Exchange Act"), are available free of charge through the investor relations page of our website as soon as reasonably practicable after we electronically file such material with, or furnish it to, the Securities and Exchange Commission.  Alternatively, these reports may be accessed at the SEC&#8217;s website at www.sec.gov.</span></div><div><a id="s6A225B862ADD5FE98AD13155E7F25164"></a></div><div style="line-height:120%;padding-top:8px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;1A.&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;RISK FACTORS</span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We operate in a rapidly changing environment that involves a number of risks, some of which are beyond our control. This discussion highlights some of the risks which may affect future operating results. These are the risks and uncertainties we believe are most important for you to consider. Additional risks and uncertainties not presently known to us, which we currently deem immaterial or which are similar to those faced by other companies in our industry or business in general, may also impair our business operations. If any of the following risks or uncertainties actually occurs, our business, financial condition and operating results would likely suffer.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">10</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We operate in an emerging market, which makes it difficult to evaluate our business and future prospects.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Robots represent a new and emerging market. Accordingly, our business and future prospects are difficult to evaluate. We cannot accurately predict the extent to which demand for consumer robots will increase, if at all. You should consider the challenges, risks and uncertainties frequently encountered by companies using new and unproven business models in rapidly evolving markets. These challenges include our ability to:</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">generate sufficient revenue and gross margin to maintain profitability;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">acquire and maintain market share in our consumer market;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">attract and retain customers of our consumer robots;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">attract and retain engineers and other highly-qualified personnel; and</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">expand our product offerings beyond our existing robots.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">If we fail to successfully address these and other challenges, risks and uncertainties, our business, results of operations and financial condition would be materially harmed.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Our business currently depends solely on our consumer robots, and our sales growth and operating results would be negatively impacted if we are unable to enhance our current consumer robots or develop new consumer robots at competitive prices or in a timely manner, or if the consumer robot market does not achieve broad market acceptance.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We primarily derive our revenue from consumer robot sales. For the foreseeable future, we expect that our revenue will be derived solely from sales of consumer robots in general, and home floor care products in particular. Accordingly, our future success depends upon our ability to further penetrate the consumer home care market, to enhance our current consumer products and to develop and introduce new consumer products offering enhanced performance and functionality at competitive prices. The development and application of new technologies involves time, substantial costs and risks. Our inability to achieve significant sales of our newly introduced robots, or to enhance, develop and introduce other products in a timely manner, or at all, would materially harm our sales growth and operating results.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Even if consumer robots gain wide market acceptance, our robots may not adequately address market requirements and may not continue to gain market acceptance. If robots generally, or our robots specifically, do not gain wide market acceptance, we may not be able to achieve our anticipated level of growth, and our revenue and results of operations would suffer.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We face intense competition from other providers of robots, including diversified technology providers, as well as competition from providers offering alternative products, which could negatively impact our results of operations and cause our market share to decline.</span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A number of companies have developed or are developing robots that will compete directly with our product offerings. Many current and potential competitors are larger in size and more broadly diversified with substantially greater financial, marketing, research and manufacturing resources than we possess, and there can be no assurance that our current and future competitors will not be more successful than us. We also face competition from manufacturers of lower-cost devices, which may further drive down the average selling price in the marketplace for floor cleaning products.  Moreover, while we believe many of our customers purchase our floor vacuuming robots as a supplement to, rather than a replacement for, their traditional vacuum cleaners, we also compete with providers of traditional vacuum cleaners.</span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The global market for robots is highly competitive, rapidly evolving and subject to changing technologies, shifting customer needs and expectations and the likely increased introduction of new products. Our ability to remain competitive will depend to a great extent upon our ongoing performance in the areas of product development and customer support.</span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In the event that the robot market expands further, we expect that competition will intensify as additional competitors enter the market and current competitors expand their product lines. Companies competing with us may introduce products that are competitively priced, have increased performance or functionality, or incorporate technological advances that we have not yet developed or implemented. Increased competitive pressure could result in a loss of sales or market share or cause us to lower prices for our products, any of which would harm our business and operating results.</span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Some of our competitors aggressively discount their products and services in order to gain market share, which has resulted in pricing pressures, reduced profit margins and lost market share. In addition, new products may have lower selling prices or higher costs than legacy products, which could negatively impact our gross margins and operating results.&#160;</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We cannot assure you that our products will continue to compete favorably or that we will be successful in the face of increasing competition from new products and enhancements introduced by existing competitors or new companies entering the markets in which we provide products. Our failure to compete successfully could cause our revenue and market share to decline, which would negatively impact our results of operations and financial condition.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">11</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Any efforts to expand our product offerings beyond our current markets or to develop new products may not succeed, which could negatively impact our operating results.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Efforts to expand our product offerings beyond our current markets or to develop new products may not succeed and may divert management resources from existing operations and require us to commit significant financial resources to an unproven business, either of which could significantly impair our operating results. Any new product that we develop may not be introduced in a timely or cost-effective manner, may contain defects, or may not achieve the market acceptance necessary to generate sufficient revenue. Moreover, efforts to expand beyond our existing markets may never result in new products that achieve market acceptance, create additional revenue or become profitable.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Our financial results often vary significantly from quarter-to-quarter due to a number of factors, which may lead to volatility in our stock price.</span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our quarterly revenue and other operating results have varied in the past and are likely to continue to vary significantly from quarter-to-quarter in the future. These fluctuations may be due to numerous factors including:</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">the size, timing and mix of orders from retail stores and distributors for our consumer robots;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">the mix of products that we sell in the period;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">disruption of supply of our products from our manufacturers;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">disruptions to our supply chain due to inclement weather, labor disruptions or other factors beyond our control;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">seasonality in the sales of our products;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">the timing of new product introductions;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">unanticipated costs incurred in the introduction of new products;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">costs and availability of labor and raw materials;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">costs of freight;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">changes in our rate of returns for our consumer products;</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">our ability to introduce new products and enhancements to our existing products on a timely basis; and</span></div><div style="line-height:120%;padding-left:0px;padding-top:4px;text-indent:32px;"><span style="padding-top:4px;font-family:inherit;font-size:10pt;padding-right:16px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">warranty costs associated with our consumer products.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We cannot be certain that our revenues will grow at rates that will allow us to maintain profitability during every fiscal quarter, or even every fiscal year. We base our current and future expense levels on our internal operating plans and sales forecasts, including forecasts of holiday sales for our consumer products. A significant portion of our operating expenses, such as research and development expenses, certain marketing and promotional expenses and employee wages and salaries, do not vary directly with sales and are difficult to adjust in the short term. As a result, if sales for a quarter are below our expectations, we might not be able to reduce operating expenses for that quarter. Accordingly, a sales shortfall during a fiscal quarter, and in particular the fourth quarter of a fiscal year, could have a disproportionate effect on our operating results for that quarter or that year. Because of quarterly fluctuations, we believe that quarter-to-quarter comparisons of our operating results are not necessarily meaningful. Moreover, our operating results may not meet expectations of equity research analysts or investors. If this occurs, the trading price of our common stock could fall substantially either suddenly or over time.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We depend on a limited number of manufacturers, and our reputation and results of operations would be harmed if these manufacturers fail to meet our requirements.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We depend on a limited number of manufacturers, employing a dual-source strategy to mitigate potential manufacturing disruptions, and we have safety stock strategies for low-volume products that are not dual sourced. The majority of our contract manufacturing locations for our robots are currently located in China and we added additional manufacturing capacity in Malaysia in late 2019, where we expect to ramp up production in 2020. These manufacturers manage the supply chain for all of the raw materials and provide all facilities and labor required to manufacture our products. If these companies were to terminate their arrangements with us or fail to provide the required capacity and quality on a timely basis, there would be a disruption in manufacturing our products until replacement contract manufacturing services could be obtained or volume transferred to an alternative manufacturing partner, each of which is a costly and time-consuming process. We cannot assure you that we would be able to establish alternative manufacturing arrangements on acceptable terms or in a timely manner.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our reliance on these contract manufacturers involves certain risks, including the following:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">lack of direct control over production capacity and delivery schedules;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">lack of direct control over quality assurance, manufacturing yields and production costs;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">lack of enforceable contractual provisions over the production and costs of consumer products;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">risk of loss of inventory while in transit;</span></div></td></tr></table><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">risks associated with international commerce, including unexpected changes in legal and regulatory requirements, changes in tariffs and trade policies, risks associated with the protection of intellectual property and political and economic instability;&#160;and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">risks that our attempts to add additional manufacturing resources may be significantly delayed and thereby create disruptions in production of our products.</span></div></td></tr></table><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Any interruption in the manufacture of our products would be likely to result in delays in shipment, lost sales and revenue and damage to our reputation in the market, all of which would harm our business and results of operations. In addition, because our purchase contracts with suppliers are typically denominated in U.S.&#160;dollars, changes in currency exchange rates may impact our suppliers who operate in local currency, which may cause our suppliers to seek price concessions on future orders.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">If we fail to maintain or increase consumer robot sales through our distribution channels, our operating results would be negatively impacted.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We do not have long-term contracts regarding purchase volumes with any of our retail partners. As a result, purchases generally occur on an order-by-order basis, and the relationships, as well as particular orders, can generally be terminated or otherwise materially changed at any time prior to delivery, by our retail partners. A decision by a major retail partner, whether motivated by competitive considerations, financial difficulties, economic conditions or otherwise, to decrease its purchases from us, to reduce the shelf space for our products or to change its manner of doing business with us could significantly damage our consumer product sales and negatively impact our business, financial condition and results of operations. In addition, during recent years, various retailers, including some of our partners, have experienced significant changes and difficulties, including consolidation of ownership, increased centralization of purchasing decisions, restructuring, bankruptcies and liquidations. These and other financial problems of some of our retailers increase the risk of extending credit to these retailers. A significant adverse change in a retail partner relationship with us or in a retail partner&#8217;s financial position could cause us to limit or discontinue business with that partner, require us to assume more credit risk relating to that partner&#8217;s receivables or limit our ability to collect amounts related to previous purchases by that partner, all of which could harm our business and financial condition. Disruption of the iRobot on-line store could also decrease our consumer robot sales.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">If critical components of our products that we currently purchase from a small number of suppliers become unavailable, we may incur delays in shipment, which could damage our business.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We and our outsourced manufacturers obtain hardware components, various subsystems, raw materials and batteries from a limited group of suppliers, some of which are sole suppliers. We do not have long-term agreements with all of these suppliers obligating them to continue to sell components or products to us. If we or our outsourced manufacturers are unable to obtain components from third-party suppliers in the quantities and of the quality that we require, on a timely basis and at acceptable prices, we may not be able to deliver our products on a timely or cost-effective basis to our customers, which could cause customers to terminate their contracts with us, reduce our gross margin and seriously harm our business, results of operations and financial condition. Moreover, if any of our suppliers become financially unstable, we may have to find new suppliers. It may take several months to locate alternative suppliers, if required, or to re-tool our products to accommodate components from different suppliers. We may experience significant delays in manufacturing and shipping our products to customers and incur additional development, manufacturing and other costs to establish alternative sources of supply if we lose any of these sources. We cannot predict if we will be able to obtain replacement components within the time frames that we require at an affordable cost, or at all.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cybersecurity risks could adversely affect our business and disrupt our operations.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The threats to network and data security are increasingly diverse and sophisticated. Despite our efforts and processes to prevent breaches, our devices, as well as our servers, computer systems, and those of third parties that we use in our operations are vulnerable to cybersecurity risks, including cyber attacks such as viruses and worms, phishing attacks, distributed denial-of-service attacks, and similar disruptions from unauthorized tampering with our servers and computer systems or those of third parties that we use in our operations, which could lead to interruptions, delays, loss of critical data, and loss of consumer confidence. In addition, we may be the target of email scams that attempt to acquire sensitive information or company assets. Despite our efforts to create security barriers to such threats, we may not be able to entirely mitigate these risks. Any cyber attack that attempts to obtain our data and assets, disrupt our service, or otherwise access our systems, or those of third parties we use, if successful, could adversely affect our business, operating results, and financial condition, be expensive to remedy, and damage our reputation.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">13</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">If we suffer data breaches involving the designs, schematics or source code for our products, our brand, business and financial results could be adversely affected.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We attempt to securely store our designs, schematics and source code for our products as they are created. A&#160;breach, whether physical, electronic or otherwise, of the systems on which this sensitive data is stored could lead to damage or piracy of our products. If we or our partners are subject to data security breaches, we may have a loss in sales or increased costs arising from the restoration or implementation of additional security measures, either of which could materially and adversely affect our brand, business and financial results.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We operate our business in jurisdictions where intellectual property theft or compromise is common</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Currently, we maintain significant operations in China, where a majority of our products are manufactured. Subject to contractual confidentiality obligations, we are required to share significant product design materials with third-parties necessary for the design and manufacture of our products. We cannot be sure that our data or intellectual property will not be compromised through cyber-intrusion, theft or other means, particularly when the data or intellectual property is held by partners in foreign jurisdictions. Should our intellectual property be compromised, it may be difficult to enforce our rights in China and other foreign jurisdictions in which we operate.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We collect, store, process, and use customer data, including certain personal and robot-specific information, which subjects us to governmental regulation and other legal obligations related to privacy, information security, and data protection, and any security breaches or our actual or perceived failure to comply with such legal obligations could harm our business. </span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our latest Roomba products, as well as additional products in development, collect, store, process, and use certain customer data, which subjects us to governmental regulation and other legal obligations related to privacy, information security, and data protection, and any security breaches or our actual or perceived failure to comply with such legal obligations could harm our business. We collect, store, process, and use personal information and other user data, and we rely on third parties that are not directly under our control to do so as well. If our security measures, some of which are managed by third parties, are breached or fail, unauthorized persons may be able to obtain access to or acquire sensitive user data, which may expose us to a risk of loss, litigation, or regulatory proceedings. Depending on the nature of the information compromised, in the event of a data breach or other unauthorized access to or acquisition of our user data, we may also have obligations to notify users about the incident, and we may need to provide some form of remedy, such as a subscription to a credit monitoring service, for the individuals affected by the incident. In addition, the regulatory environment surrounding information security and privacy is increasingly demanding, with frequent imposition of new and changing requirements. For example, the European Union's ("EU") General Data Protection Regulation ("GDPR"), which became effective in May 2018, and the California Consumer Privacy Act, which became effective in January 2020, impose significant requirements on how we collect, process and transfer personal data, as well as significant fines for non-compliance. Compliance with changes in privacy and information security laws and standards may result in significant expense due to increased investment in technology and the development of new operational processes. Moreover, a growing number of legislative and regulatory bodies have adopted consumer notification requirements in the event of unauthorized access to or acquisition of certain types of personal data. Such breach notification laws continue to evolve and may be inconsistent from one jurisdiction to another. Complying with these obligations could cause us to incur substantial costs and could increase negative publicity surrounding any incident that compromises user data.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Further, we may be or become subject to data localization laws mandating that data collected in a foreign country be processed and stored only within that country. Russia adopted such a law in 2014, and it is expected that China will do so as well. If China or another country in which we have customers were to adopt a data localization law, we could be required to expand our data storage facilities there or build new ones in order to comply. The expenditure this would require, as well as costs of compliance generally, could harm our financial condition.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Acquisitions and potential future acquisitions may be difficult to integrate, divert the attention of key personnel, disrupt our business, dilute stockholder value and impair our financial results.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As part of our business strategy, we have recently acquired, and we intend to continue to consider additional acquisitions of, companies, technologies and products that we believe could accelerate our ability to compete in our core markets or allow us to enter new markets. For example, in April 2017, we acquired the iRobot-related distribution business of Sales On Demand Corporation ("SODC"), a privately-held corporation based in Tokyo, Japan, and in October 2017, we acquired Robopolis SAS ("Robopolis"), a privately-held corporation distributing iRobot products from offices in seven European countries. In April 2019, iRobot acquired Root Robotics, Inc. ("Root Robotics"), a privately-held corporation designing and selling an educational robot platform for STEM education.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Acquisitions and combinations are accompanied by a number of risks, including the difficulty of integrating the operations and personnel of the acquired companies, the potential disruption of our ongoing business, the potential distraction of </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">14</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">management, potential difficulty in managing and maintaining key customer relationships, expenses related to the acquisition and potential unknown liabilities associated with acquired businesses. Any inability to integrate completed acquisitions or combinations in an efficient and timely manner could have an adverse impact on our results of operations. In addition, we may not be able to recognize any expected synergies or benefits in connection with our acquisitions of SODC, Robopolis, Root Robotics or any future acquisitions or combinations. If we are not successful in completing acquisitions or combinations that we may pursue in the future, we may incur substantial expenses and devote significant management time and resources without a successful result. In addition, future acquisitions could require use of substantial portions of our available cash, or result in dilutive issuances of securities or an increase in our levels of debt.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our service providers may experience business interruptions, delays, or quality control issues, which may negatively impact our business and operating results.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As we expand our operations, we expect to use additional enterprise resource planning systems and account and technology service providers that may also be essential to managing our business. Our ability to manage our business would suffer if one or more of our providers suffer an interruption in their business, or experience delays, disruptions or quality control problems in their operations, or we have to change or add systems and services. While we conduct reasonable diligence on our service providers, we may not always be able to control the quality of the systems and services we receive from these providers, which could impair our ability to maintain appropriate internal controls over financial reporting and complete timely and accurate financial reporting, and may impact our business, operating results and financial condition.</span></div><div style="line-height:120%;padding-top:16px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Our valuation estimates for our recently completed and future acquisitions are based upon assumptions that may differ from actual results.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Charges to earnings as a result of acquisitions may adversely affect our operating results in the foreseeable future, which could have a material and adverse effect on the market value of our common stock.&#160; In particular, we have allocated the cost of acquiring businesses to the individual assets acquired and liabilities assumed, including various identifiable intangible assets such as acquired technology, acquired trade names and acquired customer relationships based on their respective fair values. Our estimates of fair value are based upon assumptions believed to be reasonable, but which are inherently uncertain. After we complete an acquisition, the following factors could result in material charges and adversely affect our operating results and may adversely affect our cash flows:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">costs incurred to combine the operations of businesses we acquire, such as transitional employee expenses and employee retention, redeployment or relocation expenses;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">impairment of goodwill or intangible assets;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">amortization of intangible assets acquired;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">a reduction in the useful lives of intangible assets acquired;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">identification of or changes to assumed contingent liabilities, both income tax and non-income tax related after our final determination of the amounts for these contingencies or the conclusion of the measurement period (generally up to one year from the acquisition date), whichever comes first;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">charges to our operating results to eliminate certain duplicative pre-merger activities, to restructure our operations or to reduce our cost structure; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">charges to our operating results resulting from expenses incurred to effect the acquisition.</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We depend on the experience and expertise of our senior management team and key technical employees, and the loss of any key employee may impair our ability to operate effectively.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our success depends upon the continued services of our senior management team and key technical employees. Each of our executive officers, key technical personnel and other employees could terminate his or her relationship with us at any time. The loss of any member of our senior management team might significantly delay or prevent the achievement of our business objectives and could materially harm our business and customer relationships. In addition, because of the highly technical nature of our robots, the loss of any significant number of our existing engineering and project management personnel could have a material adverse effect on our business and operating results. In addition, increased turnover, particularly on the senior management team, with insufficient development of leadership talent and succession plans, could diminish employee confidence and increase risks for retaining key employees.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">15</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">If we are unable to attract and retain additional skilled personnel, we may be unable to grow our business.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">To execute our growth plan, we must attract and retain additional, highly-qualified personnel. Competition for hiring these employees is intense, especially with regard to engineers with high levels of experience in designing, developing and integrating robots and engineers with expertise in artificial intelligence, machine learning and cloud applications. Many of the companies with which we compete for hiring experienced employees have greater resources than we have. If we fail to attract new technical personnel or fail to retain and motivate our current employees, our business and future growth prospects could be severely harmed.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">If we fail to protect, or incur significant costs in defending, our intellectual property and other proprietary rights, our business and results of operations could be materially harmed.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our success depends on our ability to protect our intellectual property and other proprietary rights. We rely primarily on patents, trademarks, copyrights, trade secrets and unfair competition laws, as well as license agreements and other contractual provisions, to protect our intellectual property and other proprietary rights. Significant technology used in our products, however, is not the subject of any patent protection, and we may be unable to obtain patent protection on such technology in the future. Moreover, existing U.S.&#160;legal standards relating to the validity, enforceability and scope of protection of intellectual property rights offer only limited protection, may not provide us with any competitive advantages, and may be challenged by third parties. In addition, the laws of countries other than the United States in which we market our products may afford little or no effective protection of our intellectual property. Patents which may be granted to us in certain foreign countries may be subject to opposition proceedings brought by third parties or result in suits by us, which may be costly and result in adverse consequences for us. Accordingly, despite our efforts, we may be unable to prevent third parties from infringing upon or misappropriating our intellectual property or otherwise gaining access to our technology. Unauthorized third parties may try to copy or reverse engineer our products or portions of our products or otherwise obtain and use our intellectual property. If we fail to protect our intellectual property and other proprietary rights, our business, results of operations or financial condition could be materially harmed.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In addition, defending our intellectual property rights may entail significant expense. We believe that certain products in the marketplace may infringe our existing intellectual property rights. We have, from time to time, resorted to legal proceedings to protect our intellectual property and may continue to do so in the future. For example, on October 15, 2019, we initiated a patent infringement lawsuit in federal district court in Massachusetts against SharkNinja Operating LLC and its related entities ("SharkNinja") for infringement of 5 patents for technology related to robotic vacuum cleaners. In addition, we sought a preliminary injunction against SharkNinja for infringement of three U.S. patents. SharkNinja has in parallel sought declarations of non-infringement of thirteen U.S. patents owned by iRobot. On November 26, 2019, the federal district court in Massachusetts denied iRobot's motion for a preliminary injunction. Similarly, in 2017, we initiated a multi-party litigation at U.S. International Trade Commission (the "ITC") as well as in federal district court in Massachusetts based on claims of patent infringement. In November 2018, the ITC issued a Notice of Final Determination confirming that U.S. Patent No. 9,038,233 is valid and infringed, and that the infringing products for bObsweep, Inc., bObsweep&#160;USA, Hoover, and Shenzhen Silver Star Intelligent Technology Co., Ltd. should be barred from importation into&#160;the United States. Prior to the issuance of the Final Determination, iRobot entered into confidential settlements with Shenzhen Zhiyi Technology Co. Ltd. d/b/a iLife, Micro-Star International, Black &amp; Decker, and Matsutek.&#160;There is no guarantee that we will prevail on other patent infringement claims against third parties. We may be required to expend significant resources to monitor and protect our intellectual property rights. In addition, any of our intellectual property rights may be challenged by others or invalidated through administrative processes or litigation. If we resort to legal proceedings to enforce our intellectual property rights or to determine the validity and scope of the intellectual property or other proprietary rights of others, the proceedings could result in significant expense to us and divert the attention and efforts of our management and technical employees, even if we were to prevail.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">16</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We may be sued by third parties for alleged infringement of their proprietary rights, which could be costly, time-consuming and limit our ability to use certain technologies in the future.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In the past we have faced multiple lawsuits based on claims of patent infringement. If the size of our markets increases, we would be more likely to be subject to claims that our technologies infringe upon the intellectual property or other proprietary rights of third parties. In addition, the vendors from which we license technology used in our products could become subject to similar infringement claims. Our vendors, or we, may not be able to withstand third-party infringement claims. Any claims, with or without merit, could be time-consuming and expensive, and could divert our management&#8217;s attention away from the execution of our business plan. Moreover, any settlement or adverse judgment resulting from the claim could require us to pay substantial amounts or obtain a license to continue to use the technology that is the subject of the claim, or otherwise restrict or prohibit our use of the technology. There can be no assurance that we would be able to obtain a license from the third party asserting the claim on commercially reasonable terms, if at all, that we would be able to develop alternative technology on a timely basis, if at all, or that we would be able to obtain a license to use a suitable alternative technology to permit us to continue offering, and our customers to continue using, our affected product. In addition, we may be required to indemnify our retail and distribution partners for third-party intellectual property infringement claims, which would increase the cost to us of an adverse ruling in such a claim. An adverse determination could also prevent us from offering our products to others. Infringement claims asserted against us or our vendors may have a material adverse effect on our business, results of operations or financial condition.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In addition, we incorporate open source software into our products, and we may continue to incorporate open source software into our products in the future. Open source software is generally licensed by its authors or other third parties under open source licenses. Some of these licenses contain requirements that we make available source code for modifications or derivative works we create based upon the open source software, and that we license such modifications or derivative works under the terms of a particular open source license or other license granting third parties certain rights of further use. If an author or other third party that distributes open source software that we use or license were to allege that we had not complied with the conditions of the applicable license, we could be required to incur significant legal expenses defending against those allegations and could be subject to significant damages, enjoined from offering or selling our products that contained the open source software and required to comply with the foregoing conditions. Any of the foregoing could disrupt and harm our business and financial condition.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Significant developments from the recent and potential changes in U.S. trade policies have had, and we expect will continue to have, a material a</span><span style="font-family:inherit;font-size:10pt;color:#212529;font-style:italic;font-weight:bold;">dverse effect on our business, financial condition and results of operations.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#212529;">T</span><span style="font-family:inherit;font-size:10pt;">he U.S. government has indicated its intent to alter its approach to international trade policy and in some cases to renegotiate, or potentially terminate, certain existing bilateral or multi-lateral trade agreements and treaties with foreign countries. Effective September 24, 2018, the U.S. government implemented a 10% tariff on certain goods imported from China, which include the majority of those imported by the Company. These tariffs were increased to 25% on May 10, 2019 and were slated to further increase to 30% in October 2019 until a last-minute interim deal was reached between the United States and China.  Although the United States and China signed a new trade agreement in January 2020, most of the previously-implemented tariffs on goods imported from China remain in place (including the tariffs described above), and uncertainty remains as to the short-term and long-term future of economic relations between the United States and China. These tariffs, and other governmental action relating to international trade agreements or policies, have directly or indirectly adversely impacted demand for our products, our costs, customers, suppliers, distributors, resellers and/or the U.S. economy or certain sectors thereof and, as a result, have adversely impacted, and we expect will continue to adversely impact, our business, financial condition and results of operations. The already-implemented, and any additional or increased, tariffs have caused and may in the future cause us to further increase prices to our customers which we believe has reduced, and in the future may reduce, demand for our products.&#160;The increased tariffs are a contributing cause for lowering our margin on products sold, and we expect a reduced margin going forward due to continuing tariffs. It remains unclear what the U.S. or foreign governments will or will not do with respect to tariffs, international trade agreements and policies on a short-term or long-term basis. We cannot predict future trade policy or the terms of any renegotiated trade agreements and their impacts on our business. The adoption and expansion of trade restrictions, the occurrence of a trade war, or other governmental action related to tariffs or trade agreements or policies has the potential to further adversely impact demand for our products, our costs, our customers, our suppliers, and the U.S. economy, which in turn could further adversely impact our business, financial condition and results of operations.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#212529;">In response to international trade policy, as well as other risks associated with concentrated manufacturing in China, the Company has begun relocating a meaningful portion of its supply chain from China to Malaysia. Such relocation activities increase costs and risks associated with establishing new manufacturing facilities.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">17</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Global economic conditions and any associated impact on consumer spending could have a material adverse effect on our business, results of operations and financial condition.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Continued economic uncertainty and reductions in consumer spending, particularly in certain international markets such as the European Union, China and Japan, may result in reductions in sales of our consumer robots. Additionally, disruptions in credit markets may materially limit consumer credit availability and restrict credit availability of our retail customers, which would also impact purchases of our consumer robots. Any reduction in sales of our consumer robots, resulting from reductions in consumer spending or continued disruption in the availability of credit to retailers or consumers, could materially and adversely affect our business, results of operations and financial condition.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Because we are an increasingly global business that in the years ended December 28, 2019, December 29, 2018 and December 30, 2017 generated approximately 50.3%, 48.7% and 48.8%, respectively, of our total revenue from sales to customers outside of the United States, we are subject to a number of additional risks including foreign currency fluctuations. These risks are magnified with our expanding global presence as a result of our acquisitions of SODC and Robopolis. These foreign currency fluctuations may make our products more expensive to our distributors and end customers, which in turn may impact sales directly or the ability or willingness of our partners to invest in growing product demand.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our primary exposure to movements in foreign currency exchange rates relates to non-U.S. dollar denominated sales and operating expenses worldwide. Weakening of foreign currencies relative to the U.S. dollar could adversely affect the U.S. dollar value of our foreign currency-denominated sales and earnings, and lead us to raise international pricing, which may reduce demand for our products. In some circumstances, for competitive or other reasons, we may decide not to raise local prices to fully offset the strengthening of the U.S. dollar, or for any other reason, which would adversely affect the U.S. dollar value of our foreign currency denominated sales and earnings. Conversely, a strengthening of foreign currencies relative to the U.S. dollar, while generally beneficial to our foreign currency-denominated sales and earnings, could cause us to reduce international pricing, incur losses on our foreign currency derivative instruments, and incur increased operating expenses, thereby limiting any benefit. Additionally, strengthening of foreign currencies may also increase our cost of product components denominated in those currencies, thus adversely affecting gross margins.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We use derivative instruments, such as foreign currency forward contracts, to hedge certain exposures to fluctuations in foreign currency exchange rates. The use of such hedging activities may not offset any, or only a portion, of the adverse financial effects of unfavorable movements in foreign exchange rates over the limited time the hedges are in place. In addition, our counterparties may be unable to meet the terms of the agreements. We seek to mitigate this risk by limiting counterparties to major financial institutions and by spreading the risk across several major financial institutions.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We are subject to a variety of U.S. and foreign laws and regulations that are central to our business; our failure to comply with these laws and regulations could harm our business or our operating results.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We are or may become subject to a variety of laws and regulations in the United States and abroad that involve matters central to our business, including laws and regulations regarding consumer protection, advertising, electronic commerce, intellectual property, manufacturing, anti-bribery and anti-corruption, and economic or other trade prohibitions or sanctions.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The increasingly global nature of our business operations subjects us to domestic and foreign laws and regulations such as the U.S. Foreign Corrupt Practices Act, the U.K. Bribery Act, and similar anti-bribery and anti-corruption laws in other jurisdictions. Our products are also subject to U.S. export controls, including the United States Department of Commerce&#8217;s Export Administration Regulations and various economic and trade sanctions regulations established by the Treasury Department&#8217;s Office of Foreign Assets Controls. Given the increasing number of foreign laws to which we are subject and the high level of complexity of these laws, there is a risk that some provisions may be inadvertently breached by us or by our subsidiaries, for example through fraudulent or negligent behavior of individual employees, our failure to comply with certain formal documentation requirements, or otherwise. If we incur liability for noncompliance under these laws or regulations, we may be forced to implement new measures to reduce our exposure to this liability. This may require us to expend substantial resources or to discontinue certain products or services, which would negatively affect our business, financial condition, and operating results. In addition, any negative publicity directed to us as a result of lawsuits, regulatory proceedings, and legislative proposals could harm our brand or otherwise impact the growth of our business. Any costs incurred as a result of compliance efforts or other liabilities under these laws or regulations could harm our business and operating results.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Environmental laws and regulations and unforeseen costs could negatively impact our future earnings.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The manufacture and sale of our products in certain states and countries may subject us to environmental and other regulations. We also face increasing complexity in our product design as we adjust to legal and regulatory requirements relating to our products. There is no assurance that such existing laws or future laws will not impair future earnings or results of operations.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">18</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Business disruptions resulting from international uncertainties could negatively impact our profitability.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We derive, and expect to continue to derive, a significant portion of our revenue from international sales in various European and Far East markets, and Canada, particularly following our acquisitions of SODC and Robopolis. For the fiscal years ended December 28, 2019, December 29, 2018 and December 30, 2017, sales to non-U.S.&#160;customers accounted for 50.3%, 48.7% and 48.8% of total revenue, respectively. We expect that international revenues will continue to account for a significant percentage of our revenues for the foreseeable future. Our international revenue and operations are subject to a number of material risks, including, but not limited to:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">difficulties in staffing, managing and supporting operations in multiple countries;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">difficulties in enforcing agreements and collecting receivables through foreign legal systems and other relevant legal issues;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">fewer legal protections for intellectual property;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">foreign and U.S.&#160;taxation issues, tariffs, and international trade barriers;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">difficulties in obtaining any necessary governmental authorizations for the export of our products to certain foreign jurisdictions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">potential fluctuations in foreign economies;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">government currency control and restrictions on repatriation of earnings;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">fluctuations in the value of foreign currencies and interest rates;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">general economic and political conditions in the markets in which we operate;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">domestic and international economic or political changes, hostilities and other disruptions in regions where we currently operate or may operate in the future;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">changes in foreign currency exchange rates;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">different and changing legal and regulatory requirements in the jurisdictions in which we currently operate or may operate in the future;&#160;and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">our relationships with international distributors, some of whom may be operating without written contracts.</span></div></td></tr></table><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Negative developments in any of these areas in one or more countries could result in a reduction in demand for our products, the cancellation or delay of orders already placed, threats to our intellectual property, difficulty in collecting receivables, and a higher cost of doing business, any of which could negatively impact our business, financial condition or results of operations. Moreover, our sales to customers outside the United States are primarily denominated in Euro and Japenese Yen and fluctuations in the value of foreign currencies relative to the U.S.&#160;dollar may make our products more expensive than other products, which could harm our business.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The United Kingdom&#8217;s exit from the EU, commonly referred to as "Brexit," has caused significant political and economic uncertainty in the United Kingdom, EU, and elsewhere. The impact of Brexit and the resulting turmoil on the political and economic future of the United Kingdom and the EU is uncertain, and we may be adversely affected in ways we cannot currently anticipate. The ultimate effects of Brexit will depend, in part, on any agreements the United Kingdom makes to retain access to the EU markets, and vice versa, either during a transitional period or more permanently. Brexit also may result in significant changes in the British regulatory environment, which could increase our compliance costs. We may find it more difficult to conduct business in the United Kingdom and the EU, as Brexit may result in increased regulatory complexity and increased restrictions on the movement of capital, goods and personnel. Any of these effects of Brexit, and other similar referenda that we cannot anticipate, could disrupt our operations and adversely affect our operating results. </span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">If we experience a disaster or other business continuity problem, we may not be able to recover successfully, which could cause material financial loss, loss of human capital, regulatory actions, reputational harm, or legal liability.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">If we experience a local or regional disaster or other business continuity problem, such as an earthquake, terrorist attack, pandemic or other natural or man-made disaster, our continued success will depend, in part, on the availability of our personnel, our office facilities, and the proper functioning of our computer, telecommunication and other related systems and operations. As we grow our operations in new geographic regions, the potential for particular types of natural or man-made disasters, political, economic or infrastructure instabilities, or other country- or region-specific business continuity risks increases. For example, in December 2019, a strain of&#160;coronavirus&#160;was reported to have surfaced in Wuhan, China, which may disrupt our supply chain and manufacturers, resulting in a disruption in manufacturing our products as further discussed above; see "</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">We depend on a limited number of manufacturers, and our reputation and results of operations would be harmed if these manufacturers fail to meet our requirements."</span><span style="font-family:inherit;font-size:10pt;"> Further, the emergence of the coronavirus has resulted in travel bans and restrictions, and suspension of travel within China and between China and other countries, which may disrupt our new product development if our employees cannot </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">19</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">safely travel to China for prototype builds or production start. At this point, the extent to which the&#160;coronavirus&#160;may impact our results is uncertain.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">The effects of regulations relating to conflict minerals may adversely affect our business. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On August 22, 2012, under the Dodd-Frank Wall Street Reform and Consumer Protection Act of 2010, the SEC adopted new requirements for companies that use certain minerals and metals, known as conflict minerals, in their products, whether or not these products are manufactured by third parties. These requirements require companies to research, disclose and report whether or not such minerals originate from the Democratic Republic of Congo and adjoining countries. The implementation of these requirements could adversely affect the sourcing, availability and pricing of such minerals if they are found to be used in the manufacture of our products. In addition, we continue to incur additional costs to comply with the disclosure requirements, including costs related to determining the source of any of the relevant minerals and metals used in our products. Since our supply chain is complex, we may not be able to sufficiently verify the origins for these minerals and metals used in our products through the due diligence procedures that we implement, which may harm our reputation. In such event, we may also face difficulties in satisfying customers who require that all of the components of our products are certified as conflict mineral free.&#160;</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">The market price of our common stock may fluctuate significantly.</span></div><div style="line-height:120%;padding-top:8px;text-align:justify;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The market price of our common stock has at times experienced substantial price volatility as a result of variations between our actual and anticipated financial results, announcements by us and our competitors, projections or speculation about our business or that of our competitors by the media or investment analysts or uncertainty about current global economic conditions. The stock market, as a whole, also has experienced extreme price and volume fluctuations that have affected the market price of the common stock of many technology companies in ways that may have been unrelated to such companies&#8217; operating performance. Furthermore, we believe the market price of our common stock should reflect future growth and profitability expectations. If we fail to meet these expectations, the market price of our common stock may significantly decline.</span></div><div style="line-height:120%;padding-top:8px;text-align:justify;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In addition, there are many other factors that may cause the market price of our common stock to fluctuate, including:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">actual or anticipated variations in our quarterly operating results, including fluctuations resulting from changes in foreign exchange rates or acquisitions by us, or the quarterly financial results of companies perceived to be similar to us;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">deterioration and decline in general economic, industry and/or market conditions;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">announcements of technological innovations or new products or services by us or our competitors;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">changes in estimates of our financial results or recommendations by market analysts;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">announcements by us or our competitors of significant projects, contracts, acquisitions, strategic alliances or joint ventures; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">changes in our capital structure, such as future issuances of securities or the incurrence of additional debt.</span></div></td></tr></table><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We are subject to a variety of securities laws and regulations; any shareholder litigation concerning our compliance with such laws could be costly and time consuming and, if disposed unfavorably to us, could materially affect our financial condition or results of operations.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A purported&#160;class action&#160;complaint was filed on October 24, 2019 in the U.S. District Court for the Southern District of New York, alleging that we and certain of our directors and officers violated Sections 10(b) and 20(a) of the Exchange Act and Rule 10b-5 thereunder by making false and misleading statements and omissions concerning our acquisitions of Sales on Demand Corporation and Robopolis SAS and our subsequent financial performance. The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with our allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.  In addition, on December 20, 2019, January 9 and 22, 2020, and February 10, 2020, additional lawsuits were filed against us and certain of our directors and officers with similar allegations.  An adverse determination in the securities&#160;class action&#160;lawsuit or other lawsuits could have a material adverse effect on us.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe that the allegations contained in these complaints are without merit and intend to defend the cases vigorously. Whether or not the plaintiff&#8217;s claims in these lawsuits are successful, this type of litigation is often expensive and diverts management&#8217;s attention and resources, and may cause harm to our public reputation, which could adversely affect the operation of our business. If we are ultimately required to pay significant defense costs, damages or settlement amounts, such payments could adversely affect our operations and financial condition.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We may also be the target of similar litigation in the future. Any future litigation could result in substantial costs and divert our management&#8217;s attention and resources, which could cause serious harm to our business, operating results and financial condition. We maintain liability insurance, however, if any costs or expenses associated with this or any other litigation exceed our insurance coverage, we may be forced to bear some or all of these costs and expenses directly, which could be substantial.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">20</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Our income tax provision and other tax liabilities may be insufficient if taxing authorities are successful in asserting tax positions that are contrary to our position. Additionally, there is no guarantee that we will realize our deferred tax assets.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time, we are audited by various federal, state, local and foreign authorities regarding income tax matters. Significant judgment is required to determine our provision for income taxes and our liabilities for federal, state, local and foreign taxes. Although we believe our approach to determining the appropriate tax treatment is supportable and in accordance with relevant authoritative guidance it is possible that a tax authority will take a final tax position that is materially different than that which is reflected in our income tax provision. Such differences could have a material adverse effect on our income tax provision or benefit, in the reporting period in which such determination is made and, consequently, on our results of operations, financial position and/or cash flows for such period.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The realization of our deferred tax assets ultimately depends on the existence of sufficient income in either the carryback or carryforward periods under the tax law. Due to significant estimates utilized in establishing a valuation allowance and the potential for changes in facts and circumstances, it is possible that we will be required to record a valuation allowance in future reporting periods. Our results of operations would be impacted negatively if we determine that a deferred tax asset valuation allowance is required in a future reporting period.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Provisions in our certificate of incorporation and by-laws or Delaware law might discourage, delay or prevent a change of control of our company or changes in our management and, therefore, depress the trading price of our common stock.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Provisions of our certificate of incorporation and by-laws and Delaware law may discourage, delay or prevent a merger, acquisition or other change in control that stockholders may consider favorable, including transactions in which you might otherwise receive a premium for your shares of our common stock. These provisions may also prevent or frustrate attempts by our stockholders to replace or remove our management. These provisions include:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">limitations on the removal of directors;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">a classified board of directors so that not all members of our board are elected at one time;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">advance notice requirements for stockholder proposals and nominations;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">the inability of stockholders to act by written consent or to call special meetings;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">the ability of our board of directors to make, alter or repeal our by-laws;&#160;and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:80px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:56px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">the ability of our board of directors to designate the terms of and issue new series of preferred stock without stockholder approval.</span></div></td></tr></table><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The affirmative vote of the holders of at least 75% of our shares of capital stock entitled to vote is necessary to amend or repeal the above provisions of our certificate of incorporation. In addition, absent approval of our board of directors, our by-laws may only be amended or repealed by the affirmative vote of the holders of at least 75% of our shares of capital stock entitled to vote.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In addition, Section&#160;203 of the Delaware General Corporation Law prohibits a publicly-held Delaware corporation from engaging in a business combination with an interested stockholder, generally a person which together with its affiliates owns, or within the last three years has owned, 15% of our voting stock, for a period of three years after the date of the transaction in which the person became an interested stockholder, unless the business combination is approved in a prescribed manner.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The existence of the foregoing provisions and anti-takeover measures could limit the price that investors might be willing to pay in the future for shares of our common stock. They could also deter potential acquirers of our company, thereby reducing the likelihood that you could receive a premium for your common stock in an acquisition.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">21</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Our products are complex and could have unknown defects or errors, which may give rise to claims against us, diminish our brand or divert our resources from other purposes.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our robots rely on the interplay among behavior-based artificially intelligent systems, real-world dynamic sensors, user-friendly interfaces and tightly-integrated, electromechanical designs to accomplish their missions. Despite testing, our new or existing products have contained defects and errors and may in the future contain defects, errors or performance problems when first introduced, when new versions or enhancements are released, or even after these products have been used by our customers for a period of time. These problems could result in expensive and time-consuming design modifications or warranty charges, delays in the introduction of new products or enhancements, significant increases in our service and maintenance costs, exposure to liability for damages, mandatory or voluntary recall or product upgrades, damaged customer relationships and harm to our reputation, any of which could materially harm our results of operations and ability to achieve market acceptance. Our quality control procedures relating to the raw materials and components that it receives from third-party suppliers as well as our quality control procedures relating to its products after those products are designed, manufactured and packaged may not be sufficient. In addition, increased development and warranty costs, including the costs of any mandatory or voluntary recall, could be substantial and could reduce our operating margins. The existence of any defects, errors, or failures in our products could also lead to product liability claims or lawsuits against us. A successful product liability claim could result in substantial cost, diminish our brand and divert management&#8217;s attention and resources, which could have a negative impact on our business, financial condition and results of operations.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We spend significant amounts on advertising and other marketing campaigns, which may not be successful or cost effective.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We spend significant amounts on advertising and other marketing campaigns, such as television, print advertising, and social media, as well as increased promotional activities, to acquire new customers, and we expect our marketing expenses to increase in the future as we continue to spend significant amounts to increase awareness of our consumer robot products. For the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, sales and marketing expenses were </span><span style="font-family:inherit;font-size:10pt;">$231.5 million</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$210.4 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$162.1 million</span><span style="font-family:inherit;font-size:10pt;">, respectively, representing approximately </span><span style="font-family:inherit;font-size:10pt;">19.1%</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">19.3%</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">18.3%</span><span style="font-family:inherit;font-size:10pt;"> of our revenue, respectively. While we seek to structure our advertising campaigns in the manner that we believe is most likely to encourage people to purchase our products, we may fail to identify advertising opportunities that satisfy our anticipated return on advertising spend as we scale our investments in marketing or to fully understand or estimate the conditions and behaviors that drive customer behavior. If any of our advertising campaigns prove less successful than anticipated in attracting customers, we may not be able to recover our advertising spend, and our revenue may fail to meet market expectations, either of which could have an adverse effect on our business. There can be no assurance that our advertising and other marketing efforts will result in increased sales of our products.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">If we fail to enhance our brand, our ability to expand our customer base will be impaired and our operating results may suffer.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe that developing and maintaining awareness of the iRobot brand is critical to achieving widespread acceptance of our existing and future products and is an important element in attracting new customers. Furthermore, we expect the importance of global brand recognition to increase as competition develops. If customers do not perceive our products to be of high quality, our brand and reputation could be harmed, which could adversely impact our financial results. In addition, brand promotion efforts may not yield significant revenue or increased revenue sufficient to offset the additional expenses incurred in building our brand. Maintaining, protecting, and enhancing our brand may require us to make substantial investments, and these investments may not be successful. If we fail to successfully maintain, promote, and position our brand and protect our reputation, or if we incur significant expenses in this effort, our business, financial condition and operating results may be adversely affected.</span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">We may not be able to obtain capital when desired on favorable terms, if at all, or without dilution to our stockholders.</span></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We anticipate that our current cash, cash equivalents, cash provided by operating activities and funds available through our credit facility, will be sufficient to meet our current and anticipated needs for general corporate purposes. We operate in an emerging technology market, however, which makes our prospects difficult to evaluate. It is possible that we may not generate sufficient cash flow from operations or otherwise have the capital resources to meet our future capital needs. In such cases we may need additional financing to execute on our current or future business strategies. If we raise additional funds through the issuance of equity or convertible debt securities, the percentage ownership of our stockholders could be significantly diluted, and these newly-issued securities may have rights, preferences or privileges senior to those of existing stockholders. We cannot assure you that additional financing will be available on terms favorable to us, or at all. If adequate funds are not available or are not available on acceptable terms, if and when needed, our ability to fund our operations, take advantage of unanticipated opportunities, develop or enhance our products, or otherwise respond to competitive pressures would be significantly limited. In </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">22</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-bottom:8px;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">addition, our access to credit through our credit facility may be limited by the restrictive financial covenants contained in the agreement, which require us to maintain profitability.</span></div><div><a id="s3FBA1627B3EB516FBED9BD0B0B12E5D9"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;1B.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">UNRESOLVED STAFF COMMENTS&#160;&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">None.</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s139AF4E8FAC15D9DB525E56A5744064E"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;2.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">PROPERTIES&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our corporate headquarters are located in Bedford, Massachusetts, where we lease approximately 270,000&#160;square feet. This lease expires on April&#160;30, 2030.  We also lease smaller facilities around the world. We believe that our leased facilities and additional or alternative space available to us will be adequate to meet our needs for the foreseeable future.</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s1B7ACF4499E15309973ADD67D4776E3F"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;3.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;LEGAL PROCEEDINGS&#160;</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time and in the ordinary course of business, we are subject to various claims, charges and litigation. The outcome of litigation cannot be predicted with certainty and some lawsuits, claims or proceedings may be disposed of unfavorably to us, which could materially affect our financial condition or results of operations. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October 24, 2019, purported Company shareholder Miramar Firefighters&#8217; Pension Fund filed a putative class action in the U.S. District Court for the Southern District of New York against the Company and certain of its directors and officers, captioned&#160;Miramar Firefighters&#8217; Pension Fund v. iRobot Corporation, et al., No. 1:19-cv-09837.&#160; The complaint alleges violations of Sections 10(b) and 20(a) of the Securities Exchange Act of 1934, as amended (the "Exchange Act") and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts. A similar case captioned Campbell v. iRobot Corporation, et al., No. 1:19-cv-12483 was also filed in the U.S. District Court for the Southern District of New York and subsequently transferred to the U.S. District Court for the District of Massachusetts. On January 24, 2020, the Court consolidated the Miramar and Campbell cases and appointed a lead plaintiff and lead plaintiff's Counsel.&#160; </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 20, 2019, purported Company shareholders David Katz and Thomas Wightman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for Southern District of New York against the Company and certain of its directors and officers, captioned&#160;David Katz and Thomas Wightman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:19-cv-11692. The complaint alleges breaches of fiduciary duties, unjust enrichment,&#160; violations of Sections 10(b) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On January 9, 2020, purported Company shareholder Robert Truman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Robert Truman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10034. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On January 22, 2020, purported Company shareholder Alexa Ruhfass, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Alexa Ruhfass, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10133. The complaint alleges breaches of fiduciary duties, unjust enrichment, waste of corporate assets, and violations of Sections 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160;The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief. </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">23</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 10, 2020, purported Company shareholder William Tasco, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;William Tasco, derivatively on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10253. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s86BC4C469B6A5B47B6BB3FEE0A4F09F5"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;4.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">MINE SAFETY DISCLOSURES</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Not Applicable.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">24</span></div></div><hr style="page-break-after:always"></hr><div><a id="sF5EFFF7AD8E0574CB0F075881FBC6D6E"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">PART&#160;II</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s4D169E9687065B81972C694350C91B0E"></a></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;5.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">MARKET FOR REGISTRANT&#8217;S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES&#160;</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our common stock is listed on The Nasdaq Global Select Market under the symbol "IRBT."  As of </span><span style="font-family:inherit;font-size:10pt;">January&#160;31, 2020</span><span style="font-family:inherit;font-size:10pt;">, there were approximately </span><span style="font-family:inherit;font-size:10pt;">28,352,390</span><span style="font-family:inherit;font-size:10pt;">&#160;shares of our common stock outstanding held by approximately 166 stockholders of record.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Dividend Policy</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have never declared or paid any cash dividends on our capital stock. We currently expect to retain future earnings, if any, to finance the growth and development of our business and we do not anticipate paying any cash dividends in the foreseeable future.</span></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Securities Authorized for Issuance Under Equity Compensation Plans</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Information about our equity compensation plans is incorporated herein by reference to Item 12 of Part III of this Annual Report on Form 10-K.</span></div><div style="line-height:120%;padding-left:4px;padding-top:4px;text-align:left;padding-left:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">25</span></div></div><hr style="page-break-after:always"></hr><div><a id="s65781376856B52BDA19C10F9DC90AF1B"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;6.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">SELECTED FINANCIAL DATA</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following selected consolidated financial data are derived from the audited financial statements of the Company, and should be read in conjunction with our consolidated financial statements, the related notes and "Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations" included elsewhere in this Annual Report on Form&#160;10-K. The historical results are not necessarily indicative of the results of future operations.</span></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.21875%;border-collapse:collapse;text-align:left;"><tr><td colspan="20"></td></tr><tr><td style="width:41%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="19" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;31, <br/>2016</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">January&#160;2, <br/>2016</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="19" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">(In thousands, except earnings per share amounts)</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Consolidated Statements of Income:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Total revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1,214,010</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1,092,584</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">883,911</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">660,604</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">616,778</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross profit</span></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;"><span style="font-family:inherit;font-size:10pt;">543,927</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">555,428</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">433,159</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">319,315</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">288,926</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating income</span></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;"><span style="font-family:inherit;font-size:10pt;">86,618</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">105,822</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">72,690</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">57,557</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">60,618</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income tax expense</span></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;"><span style="font-family:inherit;font-size:10pt;">13,533</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">20,630</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">25,402</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">19,422</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">18,841</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">85,300</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">87,992</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">50,964</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">41,939</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">44,130</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Net Income Per Share:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Basic</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3.04</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3.18</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1.85</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1.51</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1.49</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2.97</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3.07</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1.77</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1.48</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1.47</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Shares&#160;Used In Per Share Calculations:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Basic</span></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;"><span style="font-family:inherit;font-size:10pt;">28,097</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">27,692</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">27,611</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">27,698</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">29,550</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted</span></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;"><span style="font-family:inherit;font-size:10pt;">28,735</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">28,640</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">28,753</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">28,292</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">30,107</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Consolidated Balance Sheet Data:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Cash and cash equivalents</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">239,392</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">130,373</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">128,635</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">214,523</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">179,915</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Short term investments</span></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;"><span style="font-family:inherit;font-size:10pt;">17,032</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">31,605</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">37,225</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">39,930</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">33,124</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets</span></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;"><span style="font-family:inherit;font-size:10pt;">920,753</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">766,961</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">691,522</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">507,912</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">521,743</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;">268,684</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">231,639</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">221,195</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">118,956</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">104,332</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total stockholders&#8217; equity</span></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;"><span style="font-family:inherit;font-size:10pt;">652,069</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">535,322</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">470,327</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">388,956</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">417,411</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">26</span></div></div><hr style="page-break-after:always"></hr><div><a id="s097C5B5D68985563AC369336969B825C"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;&#160;7.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</span></div></td></tr></table><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">The information contained in this section has been derived from our consolidated financial statements and should be read together with our consolidated financial statements and related notes included elsewhere in this Annual Report on Form&#160;10-K. This Annual Report on Form&#160;10-K contains 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 and Exchange Act of 1934, as amended (the "Exchange Act"), and are subject to the "safe harbor" created by those sections. In particular, statements contained in this Annual Report on Form&#160;10-K that are not historical facts, including, but not limited to statements concerning new product sales, product development and offerings, our consumer robots, our competition, our strategy, our market position, market acceptance of our products, seasonal factors, the impact of our acquisitions of SODC and Robopolis, revenue recognition, our profits, growth of our revenues, composition of our revenues, our cost of revenues, units shipped, average selling prices, the impact of promotional activity and tariffs, operating expenses, selling and marketing expenses, general and administrative expenses, research and development expenses, and compensation costs, our projected income tax rate, our credit and letter of credit facilities, our valuations of investments, valuation and composition of our stock-based awards, and liquidity, constitute forward-looking statements and are made under these safe harbor provisions. Some of the forward-looking statements can be identified by the use of forward-looking terms such as "believes," "expects," "may," "will," "should," "could," "seek," "intends," "plans," "estimates," "anticipates," or other comparable terms. Forward-looking statements involve inherent risks and uncertainties, which could cause actual results to differ materially from those in the forward-looking statements. We urge you to consider the risks and uncertainties discussed in greater detail under the heading "Risk Factors" in evaluating our forward-looking statements. We have no plans to update our forward-looking statements to reflect events or circumstances after the date of this report. We caution readers not to place undue reliance upon any such forward-looking statements, which speak only as of the date made.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s647539533E9F5ACE8264FCDB9DB59D50"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Overview</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">iRobot is a leading global consumer robot company that designs and builds robots that empower people to do more both inside and outside the home. Our consumer robots help people find smarter ways to clean and accomplish more in their daily lives. iRobot's portfolio of solutions features proprietary technologies for the connected home and advanced concepts in cleaning, mapping and navigation, human-robot interaction, and physical solutions. Leveraging this portfolio, our engineers are building an ecosystem of robots to empower the smart home. For more than 25 years, we have been a pioneer in the robotics and consumer products industries.  </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Since our founding in 1990, we have developed expertise in the disciplines necessary to design, build, sell and support durable, high-performance and cost-effective robots through the close integration of software, electronics and hardware. Our core technologies serve as reusable building blocks that we adapt and expand to create next-generation robotic platforms. We believe that this approach accelerates the time to market, while also reducing the costs and risks associated with product development. Our significant expertise in consumer needs, robot design, engineering, and smart home technologies and trends positions us to capitalize on the growth we expect in the market for robot-based consumer products. Since the introduction of the Roomba robotic vacuum cleaner ("RVC") in 2002, we have sold more than 30&#160;million consumer robots worldwide to become a global, market-leading consumer robotics innovator with a strong presence in major geographic regions worldwide.  </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During 2017, we expanded our global operations with the acquisition of two of our major distributors in Japan and Europe. In April 2017, we acquired the iRobot-related distribution business of Sales On Demand Corporation ("SODC"), based in Tokyo, Japan for approximately $16.6 million in cash. In October 2017, we acquired our largest European distributor, Robopolis SAS ("Robopolis"), a French company, for a final purchase price of $169.4 million in cash, net of acquired cash of $38.0 million. These acquisitions provided us more direct control of 75% of our global revenue through a direct presence in countries such as Austria, Belgium, France, Germany, Japan, the Netherlands, Portugal and Spain. Following the completion of the SODC and Robopolis acquisitions, we integrated these organizations into our company, and continue to take steps to consolidate various systems that we believe will further streamline and automate key processes.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In 2019, iRobot sold more than $1.2 billion in consumer robots while navigating more challenging market conditions marked by intensified price competition in EMEA and the United States, and more moderate RVC growth in the United States due in part to the direct and indirect impacts of higher tariffs on RVCs made in and imported from China. Our commitment to innovation and funding critical research and development projects continued to yield tangible results through new product launches and new and enhanced features and functionality. In addition to launching the Roomba i7 and i7+ in major international markets during 2019, we introduced our deepest cleaning RVCs, the Roomba s9 and s9+, and the Braava jet m6, our advanced robotic mop. We also took steps to commercialize our robotic lawn mower during 2019. Other highlights in 2019 included the commencement of production at a new Roomba manufacturing facility in Malaysia, the implementation of new </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">27</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:8px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">pricing and promotional tactics aimed at restoring U.S. RVC growth and defending our leadership position in EMEA, and the acquisition of Root Robotics, Inc. ("Root Robotics"), which enhances our commitment to Science, Technology, Engineering and Math ("STEM") through new educational robots. </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:11pt;"><span style="font-family:inherit;font-size:10pt;">Our total revenue for 2019 was </span><span style="font-family:inherit;font-size:10pt;">$1,214.0 million</span><span style="font-family:inherit;font-size:10pt;">, which represents an 11.1% increase from revenue of </span><span style="font-family:inherit;font-size:10pt;">$1,092.6 million</span><span style="font-family:inherit;font-size:10pt;"> for 2018. Domestic revenue grew $42.6&#160;million, or 7.6%, and international revenue increased by $78.8&#160;million, or 14.8%, primarily as a result of sales of new products that have been launched since the second half of 2018.  </span><span style="font-family:inherit;font-size:11pt;"> </span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Fiscal Periods</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We operate and report using a 52-53&#160;week fiscal year ending on the Saturday closest to December&#160;31. Accordingly, our fiscal quarters will end on the Saturday that falls closest to the last day of the third month of each quarter.</span></div><div><a id="s48D501A1C8FE58E2B74450C016363B90"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Critical Accounting Policies and Estimates</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The preparation of financial statements in conformity with generally accepted accounting principles in the United States requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, revenue and expenses and the disclosure of contingent assets and liabilities in the consolidated financial statements. These estimates and judgments, include but are not limited to, revenue recognition including performance obligations, variable consideration and other obligations such as product returns and incentives; warranty costs; valuation of goodwill and acquired intangible assets; valuation of financial instruments; accounting for business combinations; evaluating loss contingencies; accounting for stock-based compensation including performance-based assessments; and accounting for income taxes and related valuation allowances. We base these estimates and judgments on historical experience, market participant fair value considerations, projected future cash flows and various other factors that we believe are reasonable under the circumstances. Actual results may differ from our estimates.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We believe that of our significant accounting policies, which are described in the notes to our consolidated financial statements, the following accounting policies involve a greater degree of judgment and complexity. Accordingly, we believe that the following accounting policies are the most critical to aid in fully understanding and evaluating our consolidated financial condition and results of operations.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Revenue Recognition</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We primarily derive our revenue from product sales. We sell products directly to consumers through on-line stores and indirectly through resellers and distributors. Revenue is recognized upon transfer of control of promised products or services to customers, generally as title and risk of loss pass, in an amount that reflects the consideration we expect to receive in exchange for those products or services. Revenue is recognized only to the extent that it is probable that a significant reversal of revenue will not occur. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from revenue. Shipping and handling expenses are considered fulfillment activities and are expensed as incurred.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our product portfolio includes various consumer robots, many of which are Wi-Fi connected. The consumer robots are generally highly dependent on, and interrelated with, the embedded software and cannot function without the software. As such, the consumer robots are accounted for as a single performance obligation, and the revenue is recognized at a point in time when the control is transferred to distributors, resellers or directly to end customers through online stores. For consumer robots with Wi-Fi capability ("connected robots"), each sale represents an arrangement with multiple promises consisting of the robot, an app, cloud services and potential future unspecified software upgrades. We have determined that the app, cloud services and potential future unspecified software upgrades represent one promised service to the customer to enhance the functionality and interaction with the robot (referred to collectively as "Cloud Services"). </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Prior to the adoption of ASU No. 2014-09, "Revenue from Contracts with Customers," ("ASC 606") on December 31, 2017, the beginning of fiscal year 2018, the revenue allocated to the Cloud Services was deferred and recognized on a straight-line basis over the expected life of the robot. On December 31, 2017, we adopted ASC 606 using the modified retrospective method applied to those contracts that were not completed as of the adoption date. Upon the adoption of ASC 606, we concluded that, on a quantitative and qualitative basis, the Cloud Services did not constitute a material performance obligation for the then existing products and, as such, these services were not considered a separate performance obligation that required allocation of transaction price. Under the modified retrospective method, we recognized the cumulative effect of the adoption and recorded a net increase of $1.0 million to the beginning retained earnings as of December 31, 2017. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During the third quarter of 2018, we launched Roomba i7 and i7+ which brought a new level of intelligence and automation to robotic vacuum cleaners with the ability to learn, map and adapt to a home's floor plan. We have concluded that beginning with this launch, the Cloud Services related to these new products are a material performance obligation. For contracts that contain multiple performance obligations, the transaction price is allocated to each performance obligation based on a relative standalone selling price ("SSP"). The SSP reflects our best estimate of what the selling prices of elements would be if they were sold regularly on a standalone basis. Revenue allocated to the robots is recognized at a point in time when </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">28</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">control is transferred. Revenue allocated to the Cloud Services is deferred and recognized on a straight-line basis over the estimated period the software upgrades and services are expected to be provided. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our products generally carry a one-year or two-year limited warranty that promises customers that delivered products are as specified. We do not consider these assurance-type warranties as a separate performance obligation and therefore, we account for such warranties under ASC 460,&#160;"Guarantees."</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We provide limited rights of returns for direct-to-consumer sales generated through our on-line stores as well as certain resellers and distributors. In addition, we may provide other credits or incentives, including price protection, which are accounted for as variable consideration when estimating the amount of revenue to recognize. Where appropriate, these estimates take into consideration relevant factors such as our historical experience, current contractual requirements, specific known market events and trends and forecasted inventory level in the channels. Overall, these reserves reflect our best estimates, and the actual amounts of consideration ultimately received may differ from our estimates. Returns and credits are estimated at contract inception and updated at the end of each reporting period as additional information becomes available.  As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had reserves for product returns of </span><span style="font-family:inherit;font-size:10pt;">$55.2 million</span><span style="font-family:inherit;font-size:10pt;"> and other credits and incentives of </span><span style="font-family:inherit;font-size:10pt;">$134.0 million</span><span style="font-family:inherit;font-size:10pt;">. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, we had reserves for product returns of </span><span style="font-family:inherit;font-size:10pt;">$53.9 million</span><span style="font-family:inherit;font-size:10pt;"> and other credits and incentives of </span><span style="font-family:inherit;font-size:10pt;">$97.7 million</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Business Combinations </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We account for transactions that represent business combinations under the acquisition method of accounting. We allocate the total consideration paid for each acquisition to the assets we acquire and liabilities we assume based on their fair values as of the date of acquisition, including identifiable intangible assets. We base the fair value of identifiable intangible assets acquired in a business combination on valuations that use information and assumptions determined by management and which consider management&#8217;s best estimates of inputs and assumptions that a market participant would use. While we use best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the business combination date, the estimates and assumptions are inherently uncertain and subject to refinement. As a result, during the measurement period, which is generally one year from the acquisition date, any adjustment to the assets acquired and liabilities assumed is recorded against goodwill in the period in which the amount is determined. Any adjustment identified subsequent to the measurement period is included in operating results in the period in which the amount is determined.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Inventory</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory is stated at the lower of cost or net realizable value with cost being determined using the first-in, first-out method. We maintain a reserve for inventory items to provide for an estimated amount of excess or obsolete inventory.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Warranty</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We typically provide a one-year or two-year warranty against defects in materials and workmanship and will either repair the goods, provide replacement products or refund amounts to the customer for defective product. We record estimated warranty costs based on historical experience, at the time revenue is recognized.  Actual results could differ from these estimates, which could cause increases or decreases to the warranty reserves in future periods.</span></div><div style="line-height:120%;padding-top:12px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Goodwill and Other Long-Lived Assets</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Goodwill represents the excess of the purchase price in a business combination over the fair value of the net tangible and intangible assets acquired. Goodwill is not amortized but rather is assessed for impairment at the reporting unit level annually during our fourth quarter of each fiscal year or more frequently if we believe indicators of impairment exist. Goodwill impairment, if any, is determined by comparing the reporting unit's fair value to its carrying value. An impairment loss is recognized in an amount equal to the excess of the reporting unit's carrying value over its fair value, up to the amount of goodwill allocated to the reporting unit.&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other long-lived assets consist principally of completed technology, tradename, customer relationships, reacquired distribution rights and non-competition agreements. Reacquired distribution rights are amortized on an accelerated basis, while all other intangible assets are amortized over their respective estimated useful lives on a straight-line basis, consistent with the pattern in which the economic benefits are being utilized. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We periodically evaluate the recoverability of other long-lived assets whenever events and changes in circumstances, such as reductions in demand or significant economic slowdowns in the industry, indicate that the carrying amount of an asset may not be fully recoverable. When indicators of impairment are present, the carrying values of the asset group are evaluated in relation to the future undiscounted cash flows of the underlying business. The net book value of the underlying asset is adjusted to fair value if the sum of the expected discounted cash flows is less than book value. Fair values are based on estimates of </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">29</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">market prices and assumptions concerning the amount and timing of estimated future cash flows and assumed discount rates, reflecting varying degrees of perceived risk.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impairment assessment of goodwill and other long-lived assets involves significant estimates and assumptions, which may be unpredictable and inherently uncertain. These estimates and assumptions include identification of reporting units and asset groups, long-term growth rates, profitability, estimated useful lives, comparable market multiples, and discount rates. Any changes in these assumptions could impact the result of the impairment assessment. There was no impairment of goodwill or other long-lived assets during fiscal 2019, 2018 and 2017.</span></div><div style="line-height:120%;padding-top:12px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Stock-Based Compensation</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We account for stock-based compensation through recognition of the fair value of the stock-based compensation as a charge against earnings. The fair value of employee stock options is estimated at the grant date using the Black-Scholes option-pricing model. The fair value for time-based restricted stock units and performance-based restricted stock units is based on the closing share price of our common stock on the date of grant. For performance-based restricted stock units, the compensation cost is recognized based on the number of units expected to vest upon the achievement of the performance conditions. We recognize stock-based compensation as an expense on a straight-line basis, over the requisite service period. We account for forfeitures as they occur, rather than applying an estimated forfeiture rate.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Accounting for Income Taxes</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets and liabilities are determined based on the difference between the financial statement and tax basis using enacted tax rates in effect in the years in which those temporary differences are expected to be recovered or settled in each jurisdiction. A valuation allowance is provided if, based upon the weight of available evidence, it is more likely than not that the related benefits will not be realized. We regularly review the deferred tax assets for recoverability considering historical profitability, projected future taxable income, future reversals of existing taxable temporary differences, as well as feasible tax planning strategies in each jurisdiction. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and December 30, 2017, we had a valuation allowance of $3.8 million, </span><span style="font-family:inherit;font-size:10pt;">$1.1 million</span><span style="font-family:inherit;font-size:10pt;"> and $0.8 million, respectively, for certain deferred tax assets for which we believe do not meet the "more likely than not" criteria for recognition.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We report a liability for unrecognized tax benefits resulting from uncertain tax positions taken or expected to be taken in a tax return. We recognize interest and penalties, if any, related to unrecognized tax benefits in the income tax provision.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code of 1986, as amended (the "Internal Revenue Code"). Effective for our 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign-Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, we recorded a one-time provisional income tax provision of $11.9 million in the fourth quarter of 2017, which included a provisional amount of $8.9 million related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and $3.0 million related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, we finalized our analysis of the income tax effects of the Act and determined no material adjustments to the provisional amounts recorded were required.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">30</span></div></div><hr style="page-break-after:always"></hr><div><a id="s41E7443B55075E7AABA1F685D9376A6F"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Overview of Results of Operations</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth our results of operations for the periods shown (in thousands):</span></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:59%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1,214,010</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1,092,584</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">883,911</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of revenue:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of product revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">658,362</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">518,612</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">438,114</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Amortization of acquired intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;">11,721</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">18,544</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">12,638</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total cost of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">670,083</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">537,156</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">450,752</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross profit</span></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;"><span style="font-family:inherit;font-size:10pt;">543,927</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">555,428</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">433,159</span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating expenses:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Research and development</span></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;"><span style="font-family:inherit;font-size:10pt;">141,607</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">140,629</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">113,149</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing</span></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;"><span style="font-family:inherit;font-size:10pt;">231,548</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">210,411</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">162,110</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">General and administrative</span></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;"><span style="font-family:inherit;font-size:10pt;">83,103</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">97,501</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">84,771</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Amortization of acquired intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;">1,051</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1,065</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">439</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total operating expenses</span></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;"><span style="font-family:inherit;font-size:10pt;">457,309</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">449,606</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">360,469</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating income</span></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;"><span style="font-family:inherit;font-size:10pt;">86,618</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">105,822</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">72,690</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other income, net</span></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;"><span style="font-family:inherit;font-size:10pt;">12,215</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">2,800</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">3,676</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income before income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;">98,833</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">108,622</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">76,366</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income tax expense</span></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;"><span style="font-family:inherit;font-size:10pt;">13,533</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">20,630</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">25,402</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">85,300</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">87,992</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">50,964</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table sets forth our results of operations as a percentage of revenue for the periods shown:</span></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="9"></td></tr><tr><td style="width:59%;"></td><td style="width:12%;"></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: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:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="8" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">100.0</span></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;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">100.0</span></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;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">100.0</span></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;"><span style="font-family:inherit;font-size:10pt;">%</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of revenue:</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of product revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">54.2</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">47.5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">49.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Amortization of acquired intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;">1.0</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1.7</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1.4</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total cost of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">55.2</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">49.2</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">51.0</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross margin</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">44.8</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">50.8</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">49.0</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating expenses:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Research and development</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">11.7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12.9</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12.8</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing</span></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;"><span style="font-family:inherit;font-size:10pt;">19.1</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">19.3</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">18.3</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">General and administrative</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">6.8</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">8.9</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">9.6</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Amortization of acquired intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;">0.1</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">0.1</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">0.1</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total operating expenses</span></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;"><span style="font-family:inherit;font-size:10pt;">37.7</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">41.2</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">40.8</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating income</span></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;"><span style="font-family:inherit;font-size:10pt;">7.1</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">9.6</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">8.2</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other income, net</span></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;"><span style="font-family:inherit;font-size:10pt;">1.0</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">0.3</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">0.5</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income before income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;">8.1</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">9.9</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">8.7</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income tax expense</span></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;"><span style="font-family:inherit;font-size:10pt;">1.1</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1.9</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">2.9</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">7.0</span></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;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">8.0</span></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;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">5.8</span></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;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">31</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Comparison of Years Ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">, </span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"> and </span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">December&#160;30, 2017</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Revenue</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We primarily derive our revenue from product sales. We sell products directly to consumers through on-line stores and indirectly through resellers and distributors. We recognize revenue upon transfer of control of promised products or services to customers, generally as title and risk of loss pass, in an amount that reflects total consideration, net of estimated returns and allowances.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows revenue for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:39%;"></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:7%;"></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></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1,214,010</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">1,092,584</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">883,911</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">121,426</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">208,673</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Revenue increased </span><span style="font-family:inherit;font-size:10pt;">11.1%</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">$1,214.0 million</span><span style="font-family:inherit;font-size:10pt;"> in fiscal 2019 from </span><span style="font-family:inherit;font-size:10pt;">$1,092.6 million</span><span style="font-family:inherit;font-size:10pt;"> in fiscal 2018. The </span><span style="font-family:inherit;font-size:10pt;">$121.4 million</span><span style="font-family:inherit;font-size:10pt;"> increase in revenue was driven by an increase in average selling price of 5.4%. The increase in average selling price was primarily driven by the launch of our new products during the second half of fiscal 2018 and throughout 2019. Total robots shipped in fiscal 2019 increased 10.0% to approximately 5.0 million units compared to approximately 4.5 million units in fiscal 2018. In fiscal 2019, domestic revenue increased $42.6&#160;million, or 7.6%, and international revenue increased $78.8&#160;million, or 14.8%, compared to fiscal 2018. The international revenue growth was driven primarily by increases in revenue from Japan and revenue from EMEA of 21% and 15%, respectively, compared to fiscal 2018.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Revenue increased </span><span style="font-family:inherit;font-size:10pt;">23.6%</span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;">$1,092.6 million</span><span style="font-family:inherit;font-size:10pt;"> in fiscal 2018 from </span><span style="font-family:inherit;font-size:10pt;">$883.9 million</span><span style="font-family:inherit;font-size:10pt;"> in fiscal 2017. The </span><span style="font-family:inherit;font-size:10pt;">$208.7 million</span><span style="font-family:inherit;font-size:10pt;"> increase in revenue was driven by a 21.6% increase in units shipped, primarily related to growth of sales of our Roomba 900 and 600 series robots, and a 6.5% increase in average selling price, partially due to the acquisition of Robopolis. Total robots shipped in fiscal 2018 were approximately 4.5 million units compared to approximately 3.7 million units in fiscal 2017. In fiscal 2018, domestic revenue increased $108.4&#160;million, or 24.0%, and international revenue increased $100.2&#160;million, or 23.2%, compared to fiscal 2017. </span></div><div style="line-height:120%;padding-top:6px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cost of Product Revenue</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cost of product revenue includes the cost of materials, labor and overhead costs that go into the manufacture of our products. Overhead primarily includes costs such as freight, import duties, depreciation, warranty, tools and quality assurance costs. Material costs, which are our most significant cost items, can fluctuate materially on a periodic basis, although many components have been historically stable. There can be no assurance that our costs of materials will not increase. Contract manufacturer labor costs also comprise a significant portion of our cost of materials. We outsource the manufacture of our robots to contract manufacturers in Southern China and added manufacturing capacity in Malaysia during November 2019. While labor costs in these regions traditionally have been favorable compared to labor costs elsewhere in the world, including the United States, they have been increasing for the last few years. In addition, because our purchase contract  with our contract manufacturers in China and Malaysia are typically denominated in U.S.&#160;dollars, changes in currency exchange rates may impact our suppliers and increase our prices.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows cost of product revenue for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of product revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">658,362</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">518,612</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">438,114</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">139,750</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">80,498</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">As a percentage of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">54.2</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">47.5</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">49.6</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cost of product revenue increased </span><span style="font-family:inherit;font-size:10pt;">$139.8 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">26.9%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$658.4 million</span><span style="font-family:inherit;font-size:10pt;">&#160;in fiscal 2019, compared to </span><span style="font-family:inherit;font-size:10pt;">$518.6 million</span><span style="font-family:inherit;font-size:10pt;"> in fiscal 2018. The increase is primarily due to the </span><span style="font-family:inherit;font-size:10pt;">11.1%</span><span style="font-family:inherit;font-size:10pt;"> increase in revenue and higher tariffs on our Roomba products imported into the United States from China. Effective September 24, 2018, tariffs on our Roomba products were set at 10%, and effective May 10, 2019, tariffs further increased to 25%.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">32</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cost of product revenue increased </span><span style="font-family:inherit;font-size:10pt;">$80.5 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">18.4%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$518.6 million</span><span style="font-family:inherit;font-size:10pt;">&#160;in fiscal 2018, compared to </span><span style="font-family:inherit;font-size:10pt;">$438.1 million</span><span style="font-family:inherit;font-size:10pt;"> in fiscal 2017. The increase is primarily due to the 23.6% increase in revenue, partially offset by improvements in product cost. </span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Gross Profit</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our gross profit as a percentage of revenue, referred to as our gross margin, varies according to the mix of products sold, total sales volume, the level of promotional activities, and levels of other product costs such as warranty, scrap, re-work and overhead. </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows gross profit for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Gross profit</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">543,927</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">555,428</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">433,159</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(11,501</span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">122,269</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross margin</span></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;"><span style="font-family:inherit;font-size:10pt;">44.8</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">50.8</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">49.0</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Gross profit decreased </span><span style="font-family:inherit;font-size:10pt;">$11.5 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">2.1%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$543.9 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">44.8%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2019 from </span><span style="font-family:inherit;font-size:10pt;">$555.4 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">50.8%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018. The decrease in gross margin was primarily related to increased promotional activity and pricing reductions for certain products as well as the increased tariffs on our Roomba products imported to the United States from China. We expect the impact of pricing and promotional activity and higher tariffs on our products to continue to constrain our gross margin in 2020.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Gross profit increased </span><span style="font-family:inherit;font-size:10pt;">$122.3 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">28.2%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$555.4 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">50.8%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018 from </span><span style="font-family:inherit;font-size:10pt;">$433.2 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">49.0%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2017. The increase in gross margin was primarily driven by favorable product and region mix as well as the increase in average selling price resulting from our acquisition of Robopolis. </span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Research and Development</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Research and development expenses consist primarily of:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">salaries and related costs for our engineers;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">costs for high technology components used in product and prototype development;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">costs of test equipment used during product development; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:8px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">occupancy and other overhead costs.</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have significantly expanded our research and development capabilities and expect to continue to expand these capabilities in the future. We are committed to consistently maintaining the level of innovative design and development of new products as we strive to enhance our ability to serve our existing consumer markets as well as new markets for robots. We anticipate that in 2020 research and development expenses will increase in absolute dollars but remain relatively consistent as a percentage of revenue.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows research and development costs for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Research and development</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">141,607</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">140,629</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">113,149</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">978</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">27,480</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">As a percentage of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">11.7</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">12.9</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">12.8</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">33</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Research and development expenses increased </span><span style="font-family:inherit;font-size:10pt;">$1.0 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">0.7%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$141.6 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">11.7%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2019 from </span><span style="font-family:inherit;font-size:10pt;">$140.6 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">12.9%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018. This increase is primarily due to an increase in people-related costs of $8.3 million resulting from increased headcount, partially offset by lower program-related costs of $7.4 million and other efforts to control costs during fiscal 2019.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Research and development expenses increased </span><span style="font-family:inherit;font-size:10pt;">$27.5 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">24.3%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$140.6 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">12.9%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018 from </span><span style="font-family:inherit;font-size:10pt;">$113.1 million</span><span style="font-family:inherit;font-size:10pt;"> (12.8% of revenue) in fiscal 2017. This increase is attributable to increased efforts in product development and continued product enhancements. These investments enabled us to launch new products including Roomba i7, i7+ and e5 during 2018. During 2018, people and program related costs increased $15.0 million and $11.5 million, respectively, compared to fiscal 2017.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Selling and Marketing</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our selling and marketing expenses consist primarily of:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">salaries and related costs for sales and marketing personnel;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">advertising, marketing and other brand-building costs;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">customer service costs; and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">travel and related costs.</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We anticipate that in 2020, selling and marketing expenses will increase in absolute dollars but remain relatively consistent as a percentage of revenue as we launch new products and digital features, evolve our go-to-market activities to drive direct-to-consumer sales and continue to build awareness of our products.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows selling and marketing costs for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">231,548</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">210,411</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">162,110</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">21,137</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">48,301</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">As a percentage of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">19.1</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">19.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">18.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing expenses increased by </span><span style="font-family:inherit;font-size:10pt;">$21.1 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">10.0%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$231.5 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">19.1%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2019 from </span><span style="font-family:inherit;font-size:10pt;">$210.4 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">19.3%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018. This increase is primarily attributable to an increase in marketing investments of $13.7 million to support our new product launches and certain promotional and advertising campaigns in all regions as well as higher people-related costs of $6.0 million. These increases were partially offset by lower incentive compensation and efforts to control overall sales and marketing costs.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing expenses increased by </span><span style="font-family:inherit;font-size:10pt;">$48.3 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">29.8%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$210.4 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">19.3%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018 from </span><span style="font-family:inherit;font-size:10pt;">$162.1 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">18.3%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2017. This increase is primarily attributable to marketing investments of $35.1 million to support our continued global marketing and branding efforts and higher people-related costs of $13.3 million including additional headcount related to our acquisitions of SODC and Robopolis in 2017.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">General and Administrative</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our general and administrative expenses consist primarily of:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">salaries and related costs for executives and administrative personnel;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">professional services costs;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">information systems and infrastructure costs;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">travel and related costs;&#160;and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">occupancy and other overhead costs.</span></div></td></tr></table><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">34</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows general and administrative costs for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">General and administrative</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">83,103</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">97,501</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">84,771</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(14,398</span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12,730</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">As a percentage of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">6.8</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">8.9</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">9.6</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span></div><div style="line-height:120%;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">General and administrative expenses decreased by </span><span style="font-family:inherit;font-size:10pt;">$14.4 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">14.8%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$83.1 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">6.8%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2019 from </span><span style="font-family:inherit;font-size:10pt;">$97.5 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">8.9%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018. This decrease is primarily attributable to lower short-term and long-term incentive compensation costs of $8.2 million and a decrease in legal costs of $4.1 million after favorable determination of a previously-disclosed intellectual property litigation suit in the fourth quarter of 2018.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span></div><div style="line-height:120%;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">General and administrative expenses increased by </span><span style="font-family:inherit;font-size:10pt;">$12.7 million</span><span style="font-family:inherit;font-size:10pt;">, or </span><span style="font-family:inherit;font-size:10pt;">15.0%</span><span style="font-family:inherit;font-size:10pt;">, to </span><span style="font-family:inherit;font-size:10pt;">$97.5 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">8.9%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2018 from </span><span style="font-family:inherit;font-size:10pt;">$84.8 million</span><span style="font-family:inherit;font-size:10pt;"> (</span><span style="font-family:inherit;font-size:10pt;">9.6%</span><span style="font-family:inherit;font-size:10pt;"> of revenue) in fiscal 2017. This increase is primarily attributable to an increase of $8.6 million in people-related costs including additional headcount related to our acquisitions of SODC and Robopolis in 2017 and $2.4 million related to investments in enterprise hardware and software maintenance, support and services.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Amortization of Acquired Intangible Assets</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization of acquired technology and reacquired distribution rights are recorded within cost of revenue whereas the amortization of acquired customer relationships, non-compete agreements and tradenames are recorded within operating expenses. Reacquired distribution rights are amortized on an accelerated basis, while all other intangible assets are amortized over their respective estimated useful lives on a straight-line basis, consistent with the pattern in which the economic benefits are being utilized.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows total amortization expense for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">11,721</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">18,544</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12,638</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">(6,823</span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">5,906</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating expense</span></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;"><span style="font-family:inherit;font-size:10pt;">1,051</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1,065</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">439</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">(14</span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">626</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total amortization expense</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12,772</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">19,609</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">13,077</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(6,837</span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">6,532</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">As a percentage of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">1.1</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1.8</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1.5</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The decrease in amortization of acquired intangible assets during fiscal 2019, as compared to fiscal 2018, was primarily related to the reacquired distribution rights intangible assets which are being amortized on an accelerated basis. The increase in amortization of acquired intangible assets during fiscal 2018, as compared to fiscal 2017, was related to acquired intangible assets from our acquisitions of SODC and Robopolis in 2017.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Other Income, Net</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other income, net includes interest income, interest expense, foreign currency gains (losses) as well as gains (losses) from strategic investments. The following table shows other income, net for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Other income, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">12,215</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2,800</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">3,676</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">9,415</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(876</span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">As a percentage of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">1.0</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">0.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">0.5</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other income, net, amounted to </span><span style="font-family:inherit;font-size:10pt;">$12.2 million</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">$2.8 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$3.7 million</span><span style="font-family:inherit;font-size:10pt;"> for fiscal 2019, 2018 and 2017, respectively. During fiscal 2019, other income, net, included an $8.4 million gain on sale of an equity investment. During fiscal 2017, other income, net, included a $2.2 million gain on business acquisition related to our acquisition of SODC, which represents the excess of the fair value of the net assets acquired over the purchase price. </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">35</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Income Tax Provision</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows income tax provision for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and 2017 (dollars in thousands):</span></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:37%;"></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: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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2019 vs. 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">$ Change 2018 vs. 2017</span></div></td></tr><tr><td style="vertical-align:top;background-color:#bfe4ff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Income tax provision</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">13,533</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">20,630</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">25,402</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(7,097</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#bfe4ff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(4,772</span></div></td><td style="vertical-align:bottom;background-color:#bfe4ff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">As a percentage of pre-tax income</span></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;"><span style="font-family:inherit;font-size:10pt;">13.7</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">19.0</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">33.3</span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We recorded an income tax provision of </span><span style="font-family:inherit;font-size:10pt;">$13.5 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$20.6 million</span><span style="font-family:inherit;font-size:10pt;"> for fiscal </span><span style="font-family:inherit;font-size:10pt;">2019</span><span style="font-family:inherit;font-size:10pt;"> and fiscal </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;">, respectively. The </span><span style="font-family:inherit;font-size:10pt;">$13.5 million</span><span style="font-family:inherit;font-size:10pt;"> provision for fiscal 2019 resulted in an effective income tax rate of </span><span style="font-family:inherit;font-size:10pt;">13.7%</span><span style="font-family:inherit;font-size:10pt;">.  The </span><span style="font-family:inherit;font-size:10pt;">$20.6 million</span><span style="font-family:inherit;font-size:10pt;"> provision for fiscal 2018 resulted in an effective income tax rate of </span><span style="font-family:inherit;font-size:10pt;">19.0%</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our effective income tax rate of </span><span style="font-family:inherit;font-size:10pt;">13.7%</span><span style="font-family:inherit;font-size:10pt;"> for fiscal 2019 differed from the federal statutory tax rate of 21% primarily due to the recognition of tax benefits related to stock-based compensation. The decrease in the effective income tax rate of </span><span style="font-family:inherit;font-size:10pt;">13.7%</span><span style="font-family:inherit;font-size:10pt;"> for fiscal 2019 as compared to </span><span style="font-family:inherit;font-size:10pt;">19.0%</span><span style="font-family:inherit;font-size:10pt;"> for fiscal 2018 is primarily due to a discrete tax charge associated with a restructuring of the EMEA business and impacts from the remeasurement of certain deferred tax charges in fiscal 2018.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:4px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We recorded an income tax provision of </span><span style="font-family:inherit;font-size:10pt;">$20.6 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$25.4 million</span><span style="font-family:inherit;font-size:10pt;"> for fiscal </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and fiscal 2017, respectively. The $20.6 million provision for fiscal 2018 resulted in an effective income tax rate of 19.0%. The $25.4 million provision for fiscal 2017 resulted in an effective income tax rate of 33.3%. </span></div><div style="line-height:120%;padding-top:4px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our effective income tax rate of 19.0% for fiscal 2018 differed from the federal statutory tax rate of 21% primarily due to the recognition of tax benefits related to stock-based compensation, partially offset by estimated taxes associated with a restructuring of the EMEA business and the remeasurement of certain deferred tax charges based on the tax rate at which it reversed. The decrease in the effective income tax rate of 19.0% for fiscal 2018 as compared to 33.3% for fiscal 2017 is primarily due to the recognition of benefits related to the reduction of the federal statutory tax rate from 35% in fiscal 2017 to 21% in fiscal 2018.</span></div><div style="line-height:120%;padding-top:4px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sAB1B059AF5265E4CA963E519D8C7E5F0"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Liquidity and Capital Resources</span></div><div style="line-height:120%;padding-top:5px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, our principal sources of liquidity were cash and cash equivalents totaling </span><span style="font-family:inherit;font-size:10pt;">$239.4 million</span><span style="font-family:inherit;font-size:10pt;">, short-term investments of $17.0 million and accounts receivable of </span><span style="font-family:inherit;font-size:10pt;">$146.2 million</span><span style="font-family:inherit;font-size:10pt;">. Our working capital, which represents our total current assets less total current liabilities, was </span><span style="font-family:inherit;font-size:10pt;">$391.7 million</span><span style="font-family:inherit;font-size:10pt;"> as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, compared to </span><span style="font-family:inherit;font-size:10pt;">$300.7 million</span><span style="font-family:inherit;font-size:10pt;"> as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-top:5px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We manufacture and distribute our products through contract manufacturers and third-party logistics providers. We believe this approach gives us the advantages of relatively low capital investment and significant flexibility in scheduling production and managing inventory levels. By leasing our office facilities, we also minimize the cash needed for expansion. Accordingly, our capital spending is generally limited to machinery and tooling, leasehold improvements, business applications software and computer and equipment. In the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, we spent $35.3&#160;million, $32.4&#160;million and $23.4 million respectively, on capital expenditures. </span></div><div style="line-height:120%;padding-top:5px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our strategy for delivering consumer products to our distributors and retail customers gives us the flexibility to provide container shipments directly from our contract manufacturers in Southern China and Malaysia to our customers and, alternatively, allows our distributors and certain retail customers to take possession of product on a domestic basis. Accordingly, our inventory consists of goods shipped to our third-party logistics providers for the fulfillment of distributor, retail and direct-to-consumer sales. Our contract manufacturers are also responsible for purchasing and stocking components required for the production of our products, and they typically invoice us when the finished goods are shipped.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cash provided by operating activities</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span></div><div style="line-height:120%;padding-top:5px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net cash provided by our operations for the fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> was $130.1 million, of which the principal components were our net income of $85.3&#160;million and non-cash charges of $48.6&#160;million, partially offset by changes in working capital. The changes in working capital include decreases in accounts receivable of $13.1 million and inventory of $7.3 million, partially offset by a decrease in accounts payable and accrued liabilities of $20.9 million.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">36</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:5px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net cash provided by our operations for the fiscal year ended&#160;December&#160;29, 2018&#160;was $71.7 million, of which the principal components were our net income of $88.0&#160;million and non-cash charges of $53.4&#160;million, partially offset by changes in working capital. The changes in working capital include an increase in inventory of $58.5 million and accounts receivable of $23.9 million, partially offset by an $18.9 million increase in accounts payable and accrued liabilities primarily due to growth in our inventory. </span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cash used in investing activities</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net cash used in investing activities for the fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> was $20.9 million. During the year ended&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we invested $35.3 million in the purchase of property and equipment, including machinery and tooling for new products as well as expansion to a new manufacturing facility in Malaysia. In addition, we made strategic investments of $5.4 million and paid $2.8 million for a business acquisition. This was partially offset by proceeds of $12.9 million we received from the sales and maturities of marketable securities and $9.8 million upon the sale of an equity investment.  </span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net cash used in investing activities for the fiscal year ended&#160;December&#160;29, 2018&#160;was $26.4 million. During the year ended&#160;December&#160;29, 2018, we invested $32.4 million in the purchase of property and equipment, including machinery and tooling for new products. We also purchased $6.4 million of marketable securities and made strategic investments of $4.2 million. This was partially offset by proceeds of $14.0 million we received from the sales and maturities of marketable securities and proceeds from equity investments of $0.9 million.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cash provided by (used in) financing activities</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span></div><div style="line-height:120%;padding-top:5px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net cash used in financing activities for the fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> was $0.1 million. During the year ended&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we received $7.1 million from employee stock plans and paid $7.3 million upon vesting of restricted stock where 59,260 shares were retained by us to cover employee tax withholdings.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> as compared to the year ended </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;font-style:italic;"> </span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net cash used in investing activities for the fiscal year ended&#160;December&#160;29, 2018&#160;was $43.2 million. During the year ended&#160;December&#160;29, 2018, we completed our stock repurchase program and repurchased 798,794 shares of our common stock for an aggregate purchase price of $50.0 million and paid $3.5 million upon vesting of restricted stock where 50,884 shares were retained by us to cover employee tax withholdings . This was offset by proceeds of $10.4 million from employee stock plans.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Working Capital Facility</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Credit Facility</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2018, we entered into a new agreement with Bank of America, N.A., increasing the amount of our unsecured revolving line of credit from&#160;$75.0 million&#160;to&#160;$150.0 million and extending the term of the credit facility to June 2023. As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had no outstanding borrowings under our revolving credit facility. The revolving line of credit is available to fund working capital and other corporate purposes. The interest on loans under the credit facility accrues, at our election, at either (1) LIBOR plus a margin, currently equal to&#160;1.0%, based on our ratio of indebtedness to Adjusted EBITDA (the "Eurodollar Rate"), or (2) the lender&#8217;s base rate. The lender&#8217;s base rate is equal to the highest of (1) the federal funds rate plus&#160;0.5%, (2) the lender&#8217;s prime rate or (3) the Eurodollar Rate plus&#160;1.0%. In the event that LIBOR is discontinued as expected in 2021, we expect the interest rates for our debt following such event will be based on either alternate base rates or agreed upon replacement rates. While we do not expect a LIBOR discontinuation would affect our ability to borrow or maintain already outstanding borrowings, it could result in higher interest rates. </span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> The credit facility contains customary terms and conditions for credit facilities of this type, including restrictions on our ability to incur or guarantee additional indebtedness, create liens, enter into transactions with affiliates, make loans or investments, sell assets, pay dividends or make distributions on, or repurchase, our stock, and consolidate or merge with other entities. In addition, we are required to meet certain financial covenants customary with this type of agreement, including maintaining a maximum ratio of indebtedness to Adjusted EBITDA and a minimum specified interest coverage ratio.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The credit facility contains customary events of default, including for payment defaults, breaches of representations, breaches of affirmative or negative covenants, cross defaults to other material indebtedness, bankruptcy and failure to discharge </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">37</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">certain judgments. If a default occurs and is not cured within any applicable cure period or is not waived, our obligations under the credit facility may be accelerated.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we were in compliance with all covenants under the revolving credit facility.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Lines of Credit</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have an unsecured letter of credit facility with Bank of America, N.A., available to fund letters of credit up to an aggregate outstanding amount of $5.0&#160;million. As of December 28, 2019, we had letters of credit outstanding of $0.5&#160;million under our letter of credit facility.&#160; </span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have an unsecured guarantee line of credit with Mizuho, Bank Ltd., available to fund import tax payments up to an aggregate outstanding amount of 220.0&#160;million Japanese Yen. As of December 28, 2019, we had no outstanding balance under the guarantee line of credit.&#160; </span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Working Capital and Capital Expenditure Needs</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"></span><span style="font-family:inherit;font-size:10pt;">We currently have no material cash commitments, except for normal recurring trade payables, expense accruals, capital expenditures and operating leases, all of which we anticipate funding through working capital, funds provided by operating activities and our existing revolving credit facility. We believe our outsourced approach to manufacturing provides us with flexibility in both managing inventory levels and financing our inventory. We believe our existing cash and cash equivalents, short-term investments, cash provided by operating activities, and funds available through our revolving line of credit will be sufficient to meet our working capital and capital expenditure needs over at least the next twelve months. In the event that our revenue plan does not meet our expectations, we may eliminate or curtail expenditures to mitigate the impact on our working capital. Our future capital requirements will depend on many factors, including our rate of revenue growth, the expansion of our marketing and sales activities, the timing and extent of spending to support product development efforts, the timing of introductions of new products and enhancements to existing products, the acquisition of new capabilities or technologies, and the continuing market acceptance of our products and services. Moreover, to the extent that existing cash and cash equivalents, short-term investments, cash from operations, and cash from short-term borrowing are insufficient to fund our future activities, we may need to raise additional funds through public or private equity or debt financing. As part of our business strategy, we may consider additional acquisitions of companies, technologies and products, which could also require us to seek additional equity or debt financing. Additional funds may not be available on terms favorable to us or at all.</span></div><div><a id="sA2C2541E69B6576FBAC8626FFBF87AC7"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Contractual Obligations</span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We generally do not enter into binding purchase commitments. Our principal commitments consist of obligations under our credit facility, leases for office space and minimum contractual obligations. Other obligations consist primarily of subscription services. The following table describes our commitments to settle contractual obligations in cash as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> (in thousands):</span></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:31%;"></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><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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="19" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Payments Due by Period</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Less&#160;Than</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">1&#160;Year</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">1 to 3</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">3 to 5</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">More&#160;Than</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">5&#160;Years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">8,936</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">15,855</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">13,453</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">34,957</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">73,201</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Minimum contractual payments</span></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;"><span style="font-family:inherit;font-size:10pt;">2,381</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">1,213</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">3,594</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other obligations</span></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;"><span style="font-family:inherit;font-size:10pt;">3,316</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">4,296</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">432</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#8212;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">8,044</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">14,633</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">21,364</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">13,885</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">34,957</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;">84,839</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had outstanding purchase orders aggregating approximately </span><span style="font-family:inherit;font-size:10pt;">$124.4 million</span><span style="font-family:inherit;font-size:10pt;">. The purchase orders, the majority of which are with our contract manufacturers for the purchase of inventory in the normal course of business, are for manufacturing and non-manufacturing related goods and services, and are generally cancelable without penalty.&#160; In circumstances where we determine that we have financial exposure associated with any of these commitments, we record a liability in the period in which that exposure is identified.</span></div><div><a id="s56A3D77BE5655C2C8FF94DD5B4C86DFC"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Off-Balance Sheet Arrangements</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had no off-balance sheet arrangements as defined in Item&#160;303(a)(4) of Regulation&#160;S-K.</span></div><div><a id="sAC276C6B524A5BB2B10B06AE3D06A7E0"></a></div><div style="line-height:120%;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Recently Adopted Accounting Pronouncements</span></div><div style="line-height:120%;padding-top:4px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See Note 2 to the accompanying consolidated financial statements for a description of recently adopted accounting standards.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">38</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Recently Issued Accounting Pronouncements</span></div><div style="line-height:120%;padding-top:4px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See Note 2 to the accompanying consolidated financial statements for a description of certain recently issued accounting standards which may impact our financial statements in future reporting periods.&#160;&#160;&#160;&#160;</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s3EBE48DE8CEE57719AE8B98526DC7FC7"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;7A.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;&#160;QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Exchange Rate Sensitivity</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our international revenue and expenses are denominated in multiple currencies, including British Pounds, Canadian Dollars, Chinese Renminbi, Euros and Japanese Yen. As such, we have exposure to adverse changes in exchange rates associated with the revenue and operating expenses of our foreign operations. Any fluctuations in other currencies will have minimal direct impact on our international revenue.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In addition to international business conducted in foreign currencies, we have international revenue denominated in U.S. dollars. As the U.S. dollar strengthens or weakens against other currencies, our international distributors may be impacted, which could affect their profitability and our ability to maintain current pricing levels on our international consumer products.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We regularly monitor the forecast of non-U.S. dollar revenue and expenses and the level of non-U.S. dollar monetary asset and liability balances to determine if any actions, including possibly entering into foreign currency contracts, should be taken to minimize the impact of fluctuating exchange rates on our results of operations. Periodically, we enter into forward exchange contracts to hedge against foreign currency fluctuations.&#160;These contracts may or may not be designated as cash flow hedges for accounting purposes. We use cash flow hedges primarily to reduce the effects of foreign exchange rate changes on sales in Euros and Japanese Yen. At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">&#160;and&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, we had outstanding cash flow hedges with a total notional value of </span><span style="font-family:inherit;font-size:10pt;">$424.6 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$366.7 million</span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We also enter into economic hedges that are not designated as hedges from an accounting standpoint to reduce or eliminate the effects of foreign exchange rate changes typically related to short term trade receivables and payables. These contracts have maturities of ten months or less. At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">&#160;and&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, we had outstanding economic hedges with a total notional value of </span><span style="font-family:inherit;font-size:10pt;">$58.4 million</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">$56.0 million</span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, assuming all other variables are constant, if the U.S. Dollar weakened or strengthened by 10%, the fair market value of our foreign currency contracts would increase or decrease by approximately $48.4 million.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Interest Rate Sensitivity</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had unrestricted cash and cash equivalents of $239.4 million and short term investments of $17.0&#160;million. The unrestricted cash and cash equivalents are held for working capital purposes. We do not enter into investments for trading or speculative purposes. Some of the securities in which we invest, however, may be subject to market risk. This means a change in prevailing interest rates may cause the fair market value of the investment to fluctuate. To minimize this risk in the future, we intend to maintain our portfolio of cash equivalents in a variety of securities, commercial paper, money market funds, debt securities and certificates of deposit. Due to the short-term nature of these investments, we believe we do not have any material exposure to changes in the fair value of our investment portfolio as a result of changes in interest rates. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, all of our cash and cash equivalents were held in demand deposits and money market funds.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">39</span></div></div><hr style="page-break-after:always"></hr><div><a id="sA229D6A7A4A553E0B6CF929A8ED7A48F"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;8.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sFC2CA1C20B9B5B10BE34171F03153589"></a></div><div style="line-height:120%;padding-top:18px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">INDEX TO CONSOLIDATED FINANCIAL STATEMENTS</span></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:89%;"></td><td style="width:11%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Page</span></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:inherit;font-size:10pt;" href="#s34C1F8868AB1508599B06AA1BD1E3CC2"><span style="font-family:inherit;font-size:10pt;">Report of Independent Registered Public Accounting Firm</span></a></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:inherit;font-size:10pt;" href="#s34C1F8868AB1508599B06AA1BD1E3CC2">41</a></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:inherit;font-size:10pt;" href="#s66F0E3F544FE5785A3E8D4716F020C25"><span style="font-family:inherit;font-size:10pt;">Consolidated Balance Sheets at December 28, 2019 and December 29, 2018</span></a></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:inherit;font-size:10pt;" href="#s66F0E3F544FE5785A3E8D4716F020C25">43</a></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:inherit;font-size:10pt;" href="#s255A76C7441E52939E8A615D84A5A9C9"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Income for the Years ended December 28, 2019, December 29, 2018 and December 30, 2017</span></a></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:inherit;font-size:10pt;" href="#s255A76C7441E52939E8A615D84A5A9C9">44</a></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:inherit;font-size:10pt;" href="#s255A76C7441E52939E8A615D84A5A9C9"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Comprehensive Income for the Years ended December 28, 2019, December 29, 2018 and December 30, 2017</span></a></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:inherit;font-size:10pt;" href="#s255A76C7441E52939E8A615D84A5A9C9">44</a></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:inherit;font-size:10pt;" href="#s28DAD1F7BFB85268BC9237D81B12D664"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Stockholders&#8217; Equity for the Years ended December 28, 2019, December 29, 2018 and December 30, 2017</span></a></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:inherit;font-size:10pt;" href="#s28DAD1F7BFB85268BC9237D81B12D664">46</a></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:inherit;font-size:10pt;" href="#s9524F88811BE539F8EBEFB4057AF28F3"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Cash Flows for the Years ended December 28, 2019, December 29, 2018 and December 30, 2017</span></a></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:inherit;font-size:10pt;" href="#s9524F88811BE539F8EBEFB4057AF28F3">47</a></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:inherit;font-size:10pt;" href="#sAF8B15B117B45827BEE31275DD87ACC6"><span style="font-family:inherit;font-size:10pt;">Notes to Consolidated Financial Statements</span></a></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:inherit;font-size:10pt;" href="#sAF8B15B117B45827BEE31275DD87ACC6">48</a></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">40</span></div></div><hr style="page-break-after:always"></hr><div><a id="s34C1F8868AB1508599B06AA1BD1E3CC2"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Report of Independent Registered Public Accounting Firm</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">To</span><span style="font-family:inherit;font-size:10pt;color:#ff0000;font-weight:bold;"> </span><span style="font-family:inherit;font-size:10pt;">the Board of Directors and Stockholders of</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">iRobot Corporation:</span><span style="font-family:inherit;font-size:10pt;color:#ff0000;font-weight:bold;"> </span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Opinions on the Financial Statements and Internal Control over Financial Reporting</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have audited the accompanying consolidated balance sheets of iRobot Corporation and its subsidiaries (the "Company") as of December 28, 2019 and December 29, 2018, and the related consolidated statements of income, comprehensive income, stockholders&#8217; equity and cash flows for each of the three years in the period ended December 28, 2019, including the related notes (collectively referred to as the "consolidated financial statements"). We also have audited the Company's internal control over financial reporting as of December 28, 2019, based on criteria established in&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Internal Control - Integrated Framework</span><span style="font-family:inherit;font-size:10pt;">&#160;(2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO).</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In our opinion, the consolidated financial statements referred to above present fairly, in all material respects, the financial position of the Company as of December 28, 2019 and December 29, 2018, and the results of its operations and its cash flows for each of the three years in the period ended December 28, 2019 in conformity with accounting principles generally accepted in the United States of America. Also in our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of December 28, 2019, based on criteria established in&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Internal Control - Integrated Framework</span><span style="font-family:inherit;font-size:10pt;">&#160;(2013) issued by the COSO.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Change in Accounting Principle</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As discussed in Note 2 to the consolidated financial statements, the Company changed the manner in which it accounts for leases in 2019.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Basis for Opinions</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company's management is responsible for these consolidated financial statements, for maintaining effective internal control over financial reporting, and for its assessment of the effectiveness of internal control over financial reporting, included in Management's Report on Internal Control Over Financial Reporting appearing under Item 9A. Our responsibility is to express opinions on the Company&#8217;s consolidated financial statements and on the Company's internal control over financial reporting based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) ("PCAOB") and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audits to obtain reasonable assurance about whether the consolidated financial statements are free of material misstatement, whether due to error or fraud, and whether effective internal control over financial reporting was maintained in all material respects.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our audits of the consolidated financial statements included performing procedures to assess the risks of material misstatement of the consolidated financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the consolidated financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the consolidated financial statements. Our audit of internal control over financial reporting included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, and testing and evaluating the design and operating effectiveness of internal control based on the assessed risk. Our audits also included performing such other procedures as we considered necessary in the circumstances. We believe that our audits provide a reasonable basis for our opinions.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Definition and Limitations of Internal Control over Financial Reporting</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A company&#8217;s internal control over financial reporting is a process designed 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. A company&#8217;s internal control over financial reporting includes those policies and procedures that (i)&#160;pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (ii)&#160;provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and </span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">41</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">expenditures of the company are being made only in accordance with authorizations of management and directors of the company; and (iii)&#160;provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company&#8217;s assets that could have a material effect on the financial statements.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;color:#222222;font-style:italic;font-weight:bold;">Critical Audit Matters </span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The critical audit matter communicated below is a matter arising from the current period audit of the consolidated financial statements that was communicated or required to be communicated to the audit committee and that (i) relates to accounts or disclosures that are material to the consolidated financial statements and (ii) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the consolidated financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matter or on the accounts or disclosures to which it relates.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for Product Returns</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As described in Notes 2 and 3 to the consolidated financial statements, the Company records an allowance for product returns based on specific terms and conditions included in the customer agreements, historical experience and management&#8217;s expectation of future returns. The Company provides limited rights of returns for direct-to-consumer sales generated through its on-line stores and certain resellers and distributors. Returns and credits are estimated at contract inception and updated at the end of each reporting period as additional information becomes available. As of December 28, 2019, the Company had reserves for product returns of $55.2 million.</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The principal considerations for our determination that performing procedures relating to the allowance for product returns is a critical audit matter are there was significant judgment by management in developing the allowance for product returns, including management&#8217;s expectation of future returns.  </span><span style="font-family:inherit;font-size:10pt;color:#263238;">This in turn led to a high degree of auditor judgment, subjectivity and effort in performing procedures and evaluating audit evidence related to the allowance for product returns, including management&#8217;s expectation of future returns. </span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Addressing the matter involved performing procedures and evaluating audit evidence in connection with forming our overall opinion on the consolidated financial statements. These procedures included testing the effectiveness of controls relating to the revenue recognition process, including the estimation of the allowance for product returns. These procedures also included, among others (i) testing management&#8217;s process for developing the allowance for product returns, (ii) testing the completeness and accuracy of the underlying historical sales and returns data used by management to develop the allowance for product returns, and (iii) evaluating the reasonableness of historical returns experience by customer by product line and management&#8217;s expectation of future returns.  </span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/ PricewaterhouseCoopers LLP</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Boston, Massachusetts</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">February 13, 2020</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We have served as the Company&#8217;s auditor since 1999.</span><span style="font-family:inherit;font-size:10pt;"><sup style="vertical-align:top;line-height:120%;font-size:7pt"> </sup>&#160;</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">42</span></div></div><hr style="page-break-after:always"></hr><div><a id="s66F0E3F544FE5785A3E8D4716F020C25"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">CONSOLIDATED BALANCE SHEETS</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">(in thousands, except per share amounts)</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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:73%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td></tr><tr><td colspan="8" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ASSETS</span></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;"><span style="font-family:inherit;font-size:10pt;">Current assets:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Cash and cash equivalents</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e768-wk-Fact-AA5B5FA1A9ED64DB48E41ECF8C025952" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">239,392</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e787-wk-Fact-1BE67F1DB1C9712C8F741ECF8C02CD51" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">130,373</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Short term investments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e802-wk-Fact-331B0FD69B5949B7F76A1ECF8B9118DB" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,032</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e821-wk-Fact-A4D6B258120F8233859E1ECF8C01C12E" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,605</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e841-wk-Fact-533C478FD3AB27E53CF21ECF8BFC7249" name="us-gaap:AccountsAndOtherReceivablesNetCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,161</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e860-wk-Fact-1266FAB35552695887F91ECF8B9F1522" name="us-gaap:AccountsAndOtherReceivablesNetCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">162,166</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Inventory</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e880-wk-Fact-DE1D48EE84D86AB353271ECF8BFEFE61" name="us-gaap:InventoryNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">157,347</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e899-wk-Fact-5188E3C98202E8F83A161ECF8C028A0C" name="us-gaap:InventoryNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">164,633</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other current assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e919-wk-Fact-C552389EFDCA2EDE122B1ECF8B93AD23" name="us-gaap:OtherAssetsCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">34,285</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e938-wk-Fact-CD9659E51DCB36002D281ECF8B9D28B4" name="us-gaap:OtherAssetsCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,660</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total current assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e958-wk-Fact-323C7ACE16022E06B1401ECF8B99C62C" name="us-gaap:AssetsCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">594,217</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e977-wk-Fact-A16CBB12F2DC6D903BCA1ECF8B90AEAD" name="us-gaap:AssetsCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">514,437</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e997-wk-Fact-C4252AD0714C3631DD521ECF8BF900C4" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75,988</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1016-wk-Fact-7A67558A4703169135D01ECF8B91E4C0" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">57,026</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease right-of-use assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1036-wk-Fact-CA95ECF4B9B09623446EECA5EC06C5D3" name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">47,478</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1055-wk-Fact-A96F548D256668F2AD13ED1437569947" name="us-gaap:OperatingLeaseRightOfUseAsset" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1076-wk-Fact-74AE562E8A0E017939721ECF8B95ABA4" name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">41,791</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1095-wk-Fact-34B304C78C56D45C4C6C1ECF8BA33DA4" name="us-gaap:DeferredIncomeTaxAssetsNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,979</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Goodwill</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1115-wk-Fact-FA888AE4A5D8E20382961ECF8BA4F872" name="us-gaap:Goodwill" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">118,732</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1134-wk-Fact-F7507234ED785F93176A1ECF8B9EA43E" name="us-gaap:Goodwill" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">118,896</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Intangible assets, net</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1154-wk-Fact-7286D37E27ACA16012C01ECF8BA58474" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,352</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1173-wk-Fact-CD47058F31B7D9B4302E1ECF8C026833" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">24,273</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1193-wk-Fact-86F974901BA6450EC6771ECF8C03BD50" name="us-gaap:OtherAssetsNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,195</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1212-wk-Fact-AAEF52487185BBC39B211ECF8B9F5CA1" name="us-gaap:OtherAssetsNoncurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,350</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1237-wk-Fact-3A349621D4E5D096479A1ECF8BA22C6E" name="us-gaap:Assets" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">920,753</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1256-wk-Fact-30706D3007250902E57B1ECF8B970E7C" name="us-gaap:Assets" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">766,961</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td colspan="8" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</span></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;"><span style="font-family:inherit;font-size:10pt;">Current liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts payable</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1358-wk-Fact-3501EC7B37F56BC543A31ECF8C06A3E3" name="us-gaap:AccountsPayableCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">116,185</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1377-wk-Fact-2A0DDFD8215F4981DCD71ECF8BFBFC8D" name="us-gaap:AccountsPayableCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">136,742</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1392-wk-Fact-85F0823588BFA4812E1E1ECF8BFA5AE4" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,768</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1411-wk-Fact-CB9C1BD46E27F5E075C51ECF8B919BB7" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">71,259</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred revenue and customer advances</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1431-wk-Fact-A47F17EBECE53E0D86B61ECF8C02F0C1" name="us-gaap:DeferredRevenueCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,549</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1450-wk-Fact-8CCDFA646B965C1E83B31ECF8C01918A" name="us-gaap:DeferredRevenueCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,756</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total current liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1470-wk-Fact-1E7ECBE64A921D5AA9511ECF8BA0E034" name="us-gaap:LiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">202,502</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1489-wk-Fact-BDCAEF1C0E0EB2B1A4C91ECF8C007DA8" name="us-gaap:LiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">213,757</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1510-wk-Fact-2350D621F8FAC0CB0FFAED15D3C0F08B" name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">54,928</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1529-wk-Fact-8323EACF5A58FD6C428FED16C255CD84" name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax liabilities </span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1549-wk-Fact-81578440F552EA88D6EB1ECF8BA2AC4B" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">912</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1568-wk-Fact-50ABD58BC957477D9A671ECF8B97EB23" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,005</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other long-term liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1588-wk-Fact-5858CF15DBF5992B6A6E1ECF8C056A6A" name="us-gaap:OtherLiabilitiesNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,342</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1607-wk-Fact-8D5A3BC86624C209BD281ECF8B944823" name="us-gaap:OtherLiabilitiesNoncurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,877</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total long-term liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1627-wk-Fact-7073C7DE2D13D9CE8FD71ECF8B9BDB20" name="us-gaap:LiabilitiesNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">66,182</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1646-wk-Fact-FD5B81651EEFA9FFE0E61ECF8BFEDC37" name="us-gaap:LiabilitiesNoncurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,882</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1666-wk-Fact-B839FE76FF9580ED0EC61ECF8B9513CE" name="us-gaap:Liabilities" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">268,684</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1685-wk-Fact-6427ADDDAF958EF9B9061ECF8B946075" name="us-gaap:Liabilities" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">231,639</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Commitments and contingencies (Note&#160;15)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1705-wk-Fact-1A6DF98DA3D4FC382F871ECF8B924D5A" name="us-gaap:CommitmentsAndContingencies" contextRef="FI2019Q4" unitRef="usd" xsi:nil="true" scale="0" format="ixt:nocontent"></ix:nonFraction></span><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1724-wk-Fact-4F45535AE3C92D78E7A91ECF8B99A8D5" name="us-gaap:CommitmentsAndContingencies" contextRef="FI2018Q4" unitRef="usd" xsi:nil="true" scale="0" format="ixt:nocontent"></ix:nonFraction></span><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Preferred stock, 5,000&#160;shares authorized and none outstanding</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1744-wk-Fact-431E2BADB4F21E4A54301ECF8BF96CB2" name="us-gaap:PreferredStockValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1763-wk-Fact-8DF2B255966F1BB8BD2D1ECF8BF9CFCC" name="us-gaap:PreferredStockValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Common stock, $0.01&#160;par value; 100,000&#160;shares authorized; 28,352 and 27,788&#160;shares issued and outstanding, respectively</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1783-wk-Fact-BD3EA83EA3DB8A2B07741ECF8B9CCC88" name="us-gaap:CommonStockValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">284</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1802-wk-Fact-B8F722DDABA7DFE569911ECF8BA14D20" name="us-gaap:CommonStockValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">278</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Additional paid-in capital</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1822-wk-Fact-EA0BE5C7A80CC7340BF21ECF8BA08721" name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">196,455</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1841-wk-Fact-812E4F96E24BAF7D27961ECF8B9A23E5" name="us-gaap:AdditionalPaidInCapitalCommonStock" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">172,771</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Retained earnings</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1861-wk-Fact-8188768F0CAE542FF0851ECF8BFCABC0" name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">452,321</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1880-wk-Fact-6F2B52EC3C7310D74B1D1ECF8BFDD755" name="us-gaap:RetainedEarningsAccumulatedDeficit" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">367,021</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accumulated other comprehensive income (loss)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1900-wk-Fact-0CDEF9677320BC612CA61ECF8B9DBC20" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,009</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27577324e1919-wk-Fact-AB67E2B10008AC35F6681ECF8BFD4EF1" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">4,748</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Total stockholders&#8217; equity</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1941-wk-Fact-375C3D6803EB5FD60E7B1ECF8BFF0284" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">652,069</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1960-wk-Fact-83B73988246E37DAEC801ECF8B96F529" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">535,322</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities and stockholders&#8217; equity</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e1985-wk-Fact-88606A7593D0CD161ED61ECF8BA66B53" name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">920,753</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27577324e2004-wk-Fact-1C15571C5DFAC57D5D531ECF8BA49C6F" name="us-gaap:LiabilitiesAndStockholdersEquity" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">766,961</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See accompanying Notes to Consolidated Financial Statements</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">43</span></div></div><hr style="page-break-after:always"></hr><div><a id="s255A76C7441E52939E8A615D84A5A9C9"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">CONSOLIDATED STATEMENTS OF INCOME</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">(in thousands, except per share amounts)</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;"><br/></span></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:59%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e772-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49" name="us-gaap:Revenues" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,214,010</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e791-wk-Fact-989EE34444750D4496461ECF8BCC77EC" name="us-gaap:Revenues" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,092,584</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e810-wk-Fact-04C530ADA4DB9ABBE46B1ECF8C290722" name="us-gaap:Revenues" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">883,911</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of revenue: </span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of product revenue</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e882-wk-Fact-329FD7F92EBC146F85C21ECF8C045F72" name="irbt:Costofproductrevenue" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">658,362</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e901-wk-Fact-2FE21215C6273DA8BECB1ECF8C0FB8FA" name="irbt:Costofproductrevenue" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">518,612</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e920-wk-Fact-3DC6619D43D4DFE0C51D1ECF8C15A44A" name="irbt:Costofproductrevenue" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">438,114</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Amortization of acquired intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e941-wk-Fact-72320B8F36344C7BA6C51ECF8C22F854" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,721</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e960-wk-Fact-335E9B0C416FE8C700CD1ECF8C1816A0" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,544</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e979-wk-Fact-BB30FAA35D84A9E94C501ECF8C2BCF7F" name="us-gaap:CostOfGoodsAndServicesSoldAmortization" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,638</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total cost of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1000-wk-Fact-AF9B97F370BB84E713061ECF8C1946E9" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">670,083</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1019-wk-Fact-80E2006CF272FF94BA131ECF8BC478A6" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">537,156</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1038-wk-Fact-2ED9B5481D1192AEC9161ECF8C226B0E" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">450,752</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross profit</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1059-wk-Fact-DB8629595EB79157AE1B1ECF8C22E670" name="us-gaap:GrossProfit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">543,927</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1078-wk-Fact-EBA5DB7C56879909E4771ECF8BC686A5" name="us-gaap:GrossProfit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">555,428</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1097-wk-Fact-0208A1D86525D74F3B411ECF8C03AB8A" name="us-gaap:GrossProfit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">433,159</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating expenses:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Research and development</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1180-wk-Fact-BFDF879C3E92810087011ECF8C163D9E" name="us-gaap:ResearchAndDevelopmentExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">141,607</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1199-wk-Fact-4BD11A3A54FAAF0AE6AD1ECF8C2D236D" name="us-gaap:ResearchAndDevelopmentExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">140,629</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1218-wk-Fact-6B48AFFDCDCFEE6C0FE01ECF8BCF14DA" name="us-gaap:ResearchAndDevelopmentExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">113,149</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1239-wk-Fact-85FB4C1595E8E62DFAD51ECF8C1F6BA8" name="us-gaap:SellingAndMarketingExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">231,548</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1258-wk-Fact-16B96BA94ABE529BF1A41ECF8BCA2D94" name="us-gaap:SellingAndMarketingExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">210,411</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1277-wk-Fact-3F23E9F994911580F8631ECF8C036996" name="us-gaap:SellingAndMarketingExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">162,110</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">General and administrative</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1299-wk-Fact-39ABBEDD4F9A7BBB8A0D1ECF8C04A295" name="us-gaap:GeneralAndAdministrativeExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">83,103</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1318-wk-Fact-AE419D16BFD91FB430841ECF8C23A4AA" name="us-gaap:GeneralAndAdministrativeExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">97,501</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1337-wk-Fact-F08C1B4215D4893E87E91ECF8C15AA8C" name="us-gaap:GeneralAndAdministrativeExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">84,771</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Amortization of acquired intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1358-wk-Fact-59051719DEAFEC6FFA6A1ECF8C2FF85D" name="irbt:AmortizationofIntangibleAssetsNonproduction" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,051</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1377-wk-Fact-C92F24BC647064FABAF71ECF8BC98EB3" name="irbt:AmortizationofIntangibleAssetsNonproduction" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,065</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1396-wk-Fact-A7DD9679B31443285C0F1ECF8C1CB142" name="irbt:AmortizationofIntangibleAssetsNonproduction" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">439</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total operating expenses</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1417-wk-Fact-C7075CD9E316E63403261ECF8C2636E3" name="us-gaap:OperatingExpenses" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">457,309</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1436-wk-Fact-854A3DF366D5A11BE5A01ECF8C2E9066" name="us-gaap:OperatingExpenses" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">449,606</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1455-wk-Fact-0BEF751CEE7533EF6C851ECF8C1A0F15" name="us-gaap:OperatingExpenses" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">360,469</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating income</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1476-wk-Fact-5A7D8456DFA66B7696C31ECF8BC9FF3A" name="us-gaap:OperatingIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">86,618</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1495-wk-Fact-1B6258D8E56A6C1582611ECF8C097751" name="us-gaap:OperatingIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">105,822</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1514-wk-Fact-1FF86313BBA151ECAF8F1ECF8C1FA811" name="us-gaap:OperatingIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">72,690</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other income, net</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1535-wk-Fact-9A8B057550F3F8100D921ECF8BCEE041" name="us-gaap:NonoperatingIncomeExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,215</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1554-wk-Fact-90E7DBFDDD6E3E7339F81ECF8C21C584" name="us-gaap:NonoperatingIncomeExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,800</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1573-wk-Fact-F52318E93A4F1EB20E581ECF8C28F1D0" name="us-gaap:NonoperatingIncomeExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,676</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income before income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1594-wk-Fact-03FB067FCA73C1F5C5921ECF8C2024AD" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">98,833</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1613-wk-Fact-1F63C4B83778EE7F839D1ECF8BCA93D9" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">108,622</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1632-wk-Fact-C0FFAF418D6578BE77651ECF8C1B319E" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,366</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income tax expense</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1653-wk-Fact-80B82630C160508D82E51ECF8C24901F" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,533</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1672-wk-Fact-A7276CBBF0428CED119F1ECF8C229C9C" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,630</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1691-wk-Fact-BDD0129398F515CA82BC1ECF8C10B80C" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,402</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1717-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">85,300</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1736-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">87,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1755-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income per share:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Basic</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1838-wk-Fact-4EA4B5D2424F553CAF431ECF8C0E8F54" name="us-gaap:EarningsPerShareBasic" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.04</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1857-wk-Fact-FE33DC5020FD0D6DAE2C1ECF8C23CC4F" name="us-gaap:EarningsPerShareBasic" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.18</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1876-wk-Fact-BB8B39A2D003DD0E29AD1ECF8BCD70AF" name="us-gaap:EarningsPerShareBasic" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.85</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1897-wk-Fact-943D1DF1A869B1A145301ECF8BCDE983" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">2.97</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1916-wk-Fact-7706267A6D11A924F1B91ECF8C2C9748" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.07</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e1935-wk-Fact-09F8AEEA4540A4A741A71ECF8C04C5E7" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.77</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Number of shares used in per share calculations:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Basic</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e2014-wk-Fact-74F5245149CE79111EAC1ECF8C2C0770" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,097</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e2033-wk-Fact-887416FC7A4B00F3B6331ECF8C14B1E8" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">27,692</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e2052-wk-Fact-B4142115B6E2E0E768601ECF8C197AE3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">27,611</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e2073-wk-Fact-3400E7FA01B76C78B8141ECF8C194494" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,735</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e2092-wk-Fact-9D4BCD49EE27BC5D19911ECF8BCBEAAF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,640</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27579089e2111-wk-Fact-1672EE9525AC62469A941ECF8C06E2C6" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,753</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See accompanying Notes to Consolidated Financial Statements</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">44</span></div></div><hr style="page-break-after:always"></hr><div><a id="s346AF826FB82547BA29C793A551A9C6D"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">(in thousands)</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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.4140625%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:63%;"></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:10%;"></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:60px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e772-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">85,300</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e791-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">87,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e810-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:36px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other comprehensive income (loss):</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net foreign currency translation adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e888-wk-Fact-76740A30FEBBD0BDC89C1ECF8BD2B08A" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">3,435</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e907-wk-Fact-7C05F2CBC5154DD59A4A1ECF8BD8BDFF" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,896</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e927-wk-Fact-EDFF509C86DBAE882E4D1ECF8BD9FBCC" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,994</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net unrealized gains (losses) on cash flow hedges, net of tax</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e948-wk-Fact-100F50FD1664F8E84B601ECF8BDB9DF0" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,363</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e967-wk-Fact-888061ACDDA8D54C13321ECF8BDC4A57" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">327</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e987-wk-Fact-5E60DAA1AF764184F3581ECF8BD2F6C1" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">490</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net gains on cash flow hedge reclassified into earnings, net of tax</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e1008-wk-Fact-B5DBEC8D7E74A3943DA41ECF8BD622A1" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,418</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e1028-wk-Fact-808B71A7259C9B2573E31ECF8BD4E060" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">499</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e1048-wk-Fact-9E363696AC9A70072C511ECF8BD75B60" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">295</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:52px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net unrealized gains (losses) on marketable securities, net of tax</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e1070-wk-Fact-6FE83F2011AC5ACB66B61ECF8BDBA575" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">247</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e1089-wk-Fact-5C1198D54EC5E70A13171ECF8BD3BC51" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">18</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27582272e1109-wk-Fact-7399BAD4DB8EBDFB75151ECF8BD2D815" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">46</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Total comprehensive income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e1136-wk-Fact-8CF61EAF35F863B486241ECF8BD51565" name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">93,057</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e1155-wk-Fact-50FD0428228C960973101ECF8BD56ECC" name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,252</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27582272e1174-wk-Fact-9F7777CDF1F5BC4041621ECF8BD6FDD4" name="us-gaap:ComprehensiveIncomeNetOfTax" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,107</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See accompanying Notes to Consolidated Financial Statements</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">45</span></div></div><hr style="page-break-after:always"></hr><div><a id="s28DAD1F7BFB85268BC9237D81B12D664"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">CONSOLIDATED STATEMENTS OF STOCKHOLDERS&#8217; EQUITY</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">(in thousands)</span></div><div style="line-height:120%;padding-top:6px;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="23"></td></tr><tr><td style="width:39%;"></td><td style="width:8%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:5%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:6%;"></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: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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="6" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Common Stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Additional</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Paid-In</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Capital</span></div></td><td rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Retained</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Earnings</span></div></td><td rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Accumulated</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Other</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Comprehensive</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Income (Loss)</span></div></td><td rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Stockholders&#8217;</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Equity</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Value</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Balance at December&#160;31, 2016</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e909-wk-Fact-B7EA0E1896B19DF80DDD1ECF8C2D4B0A" name="us-gaap:CommonStockSharesIssued" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="INF" scale="3" format="ixt:numdotdecimal">27,238</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e928-wk-Fact-FF9DD2C1ACA2F9CFFF611ECF8C1CB57F" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">272</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e947-wk-Fact-CB2DE8DAF69982458F9B1ECF8B8F39B0" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">161,885</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e967-wk-Fact-CFA356AC6336A880E9741ECF8C2C8BD7" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">226,950</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e986-wk-Fact-9A55D66E55708A7DF6E51ECF8C2513D2" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">151</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1006-wk-Fact-787BB73059430E4ABCD71ECF8C25A2C0" name="us-gaap:StockholdersEquity" contextRef="FI2016Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">388,956</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of common stock under employee stock plans</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1022-wk-Fact-34146DEDB171D58993C91ECF8C18C7D3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">367</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1036-wk-Fact-797C00988D0DC84C9CA01ECF8C280DAD" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1055-wk-Fact-9F982038AF4608DF3B0F1ECF8C2B138F" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,569</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1115-wk-Fact-666BBBC7DA7B00F9D4961ECF8C24E7D2" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,573</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Conversion of deferred compensation</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1136-wk-Fact-DAEAD03632F29DD2D2F31ECF8C127608" name="us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">15</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">&#8212;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Vesting of restricted stock units</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1250-wk-Fact-0076F7D14847416900C61ECF8C1B9756" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">376</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1264-wk-Fact-87BF1F2D79E1E9444F161ECF8C27B159" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e1283-wk-Fact-4F3D50E1A68F05A284F01ECF8C2D4F5A" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">4</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1344-wk-Fact-47EAA3F6CD8BD859C2451ECF8C23FD4E" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1400-wk-Fact-A8EC02346AF16CDD9D5A1ECF8C243F19" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,751</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1460-wk-Fact-A138120945B22E5E20761ECF8C21BB51" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,751</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e1481-wk-Fact-5BC9DF88F21C512C61AA1ECF8C2B5A4B" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">51</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e1496-wk-Fact-2B74ECEB3E5F0DBCF5E6ED4EC441E993" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e1516-wk-Fact-0608B6C680A63F55C40B1ECF8C165956" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,982</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e1577-wk-Fact-67F6712FE32990D456221ECF8C16EB7F" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,983</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Other comprehensive income</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1675-wk-Fact-007CCA9A8C67992B71F01ECF8C2112C4" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,143</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1694-wk-Fact-702318CF158CD73759CC1ECF8C18BC40" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,143</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Directors' deferred compensation</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1750-wk-Fact-4DE73D1F91AB7C59A0D41ECF8C0CD58E" name="irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">65</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1810-wk-Fact-894B194957DAD6939FF71ECF8C22799A" name="irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">65</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Cumulative effect of a change in accounting principle related to stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1866-wk-Fact-F5174845F52BACE69F91EDC976B1EF0E" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">783</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1886-wk-Fact-5008B09B2CE901CBB137EDCA00674569" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e1925-wk-Fact-AF9B633BA3CCEBDBD6C8EDCA3BFC22A6" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">858</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-bottom:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2003-wk-Fact-723B668C72806198E3051ECF8C1D529E" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-bottom:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2042-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Balance at December&#160;30, 2017</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2063-wk-Fact-CACFE0E881D1FE6BF8BF1ECF8C16F325" name="us-gaap:CommonStockSharesIssued" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">27,945</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2082-wk-Fact-78B62BC1E4EA112BB0F31ECF8C0A01E4" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">279</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2101-wk-Fact-F7992F2123903387ACFD1ECF8C24D691" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">190,067</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2121-wk-Fact-FF125D39D03B25B189461ECF8C1C4FB0" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">277,989</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2140-wk-Fact-C6C0665582A4F35D88461ECF8C2AAE1A" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2159-wk-Fact-29BC9F3344896F2204A91ECF8C1A6CE7" name="us-gaap:StockholdersEquity" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">470,327</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of common stock under employee stock plans</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2175-wk-Fact-1399C57CDA05347F674F1ECF8C2179EF" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">285</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2189-wk-Fact-791D7208E10EBE01228E1ECF8C2B7947" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2208-wk-Fact-559CB8FF98604A3CD7071ECF8C2D15B1" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,363</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2268-wk-Fact-79D51A7ADFA0946F4D3B1ECF8C2586BC" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,366</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Vesting of restricted stock units</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2289-wk-Fact-02A7F82D7CADECAC801E1ECF8C1D2023" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">408</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2303-wk-Fact-0994B8463EE928B6CBD61ECF8C22916B" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2322-wk-Fact-BF890EF4CF6B79BB3C2B1ECF8C2988FF" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">4</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2383-wk-Fact-890789D42BD4E95604EA1ECF8C0EEF6B" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock-based compensation</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2439-wk-Fact-17782E4F8543C4CAB8721ECF8C0A3753" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,804</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2499-wk-Fact-4788B31821E6C1230C9E1ECF8C14BC61" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,804</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2520-wk-Fact-73CEB7EAA8286E741A401ECF8C0FFCE3" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">51</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2535-wk-Fact-2B9EADABB630EFF437E51ECF8C2BC41F" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2554-wk-Fact-EDEB285F94C88AD7C9851ECF8B923942" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,532</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2615-wk-Fact-7C8F8BF01751FDC42DE41ECF8C131BCF" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,532</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Other comprehensive loss</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2711-wk-Fact-2F0AB25AB7C271796C9D1ECF8C1BE8C4" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,740</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2731-wk-Fact-CBB4B74A1C4AF27256E51ECF8C15012A" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">6,740</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Directors' deferred compensation</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2788-wk-Fact-9DC24F8DE9F4314854E71ECF8C242678" name="irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">65</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2848-wk-Fact-10827EBFBF5E7744D7771ECF8C1E726E" name="irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">65</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Cumulative effect of a change in accounting principle related to adoption of ASC 606</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2923-wk-Fact-D0826C31906B847684861ECF8C2D8F1E" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,040</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e2962-wk-Fact-1205382A154A15E8F89E1ECF8C0540B2" name="us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,040</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock repurchases</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2983-wk-Fact-FE3FA35A93795D2486BD1ECF8BF22210" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">799</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e2998-wk-Fact-FEA5BC7A8D6760AB5DE11ECF8BF37CBF" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3018-wk-Fact-B336B4ADABDD2FCC424E1ECF8BF0CCCA" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">49,992</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3079-wk-Fact-F958D5413811BDAFBB921ECF8BED5634" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,000</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-bottom:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3157-wk-Fact-0FE16D953BB746DA84BD1ECF8C29BC99" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">87,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-bottom:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-bottom:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3196-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">87,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Balance at December&#160;29, 2018</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3218-wk-Fact-A104F1338EEA0A5172421ECF8C07FF70" name="us-gaap:CommonStockSharesIssued" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">27,788</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3237-wk-Fact-93C3349D005AA52FA0A21ECF8C2D4169" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">278</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3256-wk-Fact-419CEB1A958E01D91FF71ECF8C05450E" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">172,771</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3276-wk-Fact-54B6EFD1C366F037697C1ECF8C2E85AC" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">367,021</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3295-wk-Fact-3151E958F4A5846196EB1ECF8C2E786F" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">4,748</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3315-wk-Fact-83B73988246E37DAEC801ECF8B96F529" name="us-gaap:StockholdersEquity" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">535,322</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Issuance of common stock under employee stock plans</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3331-wk-Fact-80B9355EE80EB8852D3D1ECF8B8F0043" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">187</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3345-wk-Fact-3AB830DCAA87E712A6A41ECF8C24D52D" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3364-wk-Fact-36BEFE091306BC6FD3571ECF8C270AFC" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,145</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3424-wk-Fact-2A46C2F5528E28207FCD1ECF8C2ED7A0" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,147</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Vesting of restricted stock units</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3445-wk-Fact-01A4F548E09BCA12D86A1ECF8C17B6D2" name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">436</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3459-wk-Fact-57E24BD503CC116AF6931ECF8C232CA4" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3478-wk-Fact-978BE342C775FFDE49B31ECF8C26E9FB" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3539-wk-Fact-D4B84FE5F21C638FC38F1ECF8C27527E" name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock-based compensation</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3595-wk-Fact-5B370C9F6F96B2AD05D61ECF8C26E452" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,744</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3655-wk-Fact-7931B41BD6C1E997D6B01ECF8C0773C8" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,744</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3676-wk-Fact-52C5B991946E129C0A781ECF8C217AA9" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">59</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3691-wk-Fact-553D80ADADB442C2B5B41ECF8C092390" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3711-wk-Fact-731AC84C2FA801C96E011ECF8C0B72E4" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">7,276</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27593717e3772-wk-Fact-D3DE93D6F9C6627A908E1ECF8C2E6AFA" name="irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">7,277</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Other comprehensive income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3870-wk-Fact-2AD300B539BC31ECF6741ECF8C0DCEFB" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,757</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3889-wk-Fact-AF76486AC7C9DA70CC9E1ECF8C1F210E" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,757</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Directors' deferred compensation</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e3945-wk-Fact-16EBDC90527024FF4A8E1ECF8C2A6911" name="irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4005-wk-Fact-A6C136C061ADECD3F2E81ECF8C2F1121" name="irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4082-wk-Fact-077CAE85F9DAFC7CD232EDCC8DCA9BFD" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">85,300</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-bottom:1px solid #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4121-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">85,300</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Balance at December&#160;28, 2019</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4142-wk-Fact-CB8F65E7155E1793E5E81ECF8C1091F7" name="us-gaap:CommonStockSharesIssued" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,352</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4161-wk-Fact-102501F129D24F65DCDF1ECF8C2D5623" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">284</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4180-wk-Fact-F2B5DF4BAAEECF10FA361ECF8C234691" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">196,455</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4200-wk-Fact-607C81B36F2A2B9DB9AE1ECF8C1976EB" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">452,321</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4219-wk-Fact-2C75BE75CC7E0DE427A41ECF8C29F7BD" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,009</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27593717e4238-wk-Fact-375C3D6803EB5FD60E7B1ECF8BFF0284" name="us-gaap:StockholdersEquity" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">652,069</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See accompanying Notes to Consolidated Financial Statements</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">46</span></div></div><hr style="page-break-after:always"></hr><div><a id="s9524F88811BE539F8EBEFB4057AF28F3"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">CONSOLIDATED STATEMENTS OF CASH FLOWS</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">(in thousands)</span></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:59%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cash flows from operating activities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e832-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">85,300</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e851-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">87,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e870-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Adjustments to reconcile net income to net cash provided by operating activities, net of the effects of acquisitions:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Depreciation and amortization</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e948-wk-Fact-76921A9E7C41D6F392C01ECF8C0172E5" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,159</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e967-wk-Fact-FBE2A9A5910C8B01FC281ECF8BFC1115" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,574</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e986-wk-Fact-D5694E254E541CB381361ECF8BFBC52F" name="us-gaap:DepreciationDepletionAndAmortization" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,499</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Gain on sale of equity investment</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1007-wk-Fact-86C2A8237893A571510EEDD0673B4CB5" name="us-gaap:GainLossOnSaleOfEquityInvestments" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,439</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1027-wk-Fact-D24DDEF0DBA27722F58FEDD0A530547E" name="us-gaap:GainLossOnSaleOfEquityInvestments" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1046-wk-Fact-2B8BBC810584B0FEC075EDD0A67D3E40" name="us-gaap:GainLossOnSaleOfEquityInvestments" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Gain on business acquisition</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1067-wk-Fact-4B973663F6058C2831381ECF8C2C9ED9" name="us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1086-wk-Fact-E2B4E6C896C904E07AA91ECF8BFAE403" name="us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1105-wk-Fact-4C50DA7A2E69E04208251ECF8C29F5CF" name="us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,243</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock-based compensation</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1127-wk-Fact-48E87CA1CA896E92C1E31ECF8BF514D1" name="us-gaap:ShareBasedCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,744</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1146-wk-Fact-F797F7013D0C23BD45341ECF8C1E59DC" name="us-gaap:ShareBasedCompensation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,804</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1165-wk-Fact-2A27C7E4B8D2422018FF1ECF8BFD0B6A" name="us-gaap:ShareBasedCompensation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,751</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Deferred income taxes, net</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1186-wk-Fact-0D8E4B97F55CBC72F65A1ECF8BF7663B" name="us-gaap:IncreaseDecreaseInDeferredIncomeTaxes" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,118</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1206-wk-Fact-22C54FBCB88DC53428AA1ECF8C1A1123" name="us-gaap:IncreaseDecreaseInDeferredIncomeTaxes" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,848</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1226-wk-Fact-BD263DABF57D83F4B5181ECF8C18747F" name="us-gaap:IncreaseDecreaseInDeferredIncomeTaxes" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">999</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Other</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1248-wk-Fact-D15039E584C7C1242C7E1ECF8BFB6E1E" name="us-gaap:OtherOperatingActivitiesCashFlowStatement" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,267</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1267-wk-Fact-E8FA63DEC42AC364D49F1ECF8C09B548" name="us-gaap:OtherOperatingActivitiesCashFlowStatement" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,837</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1286-wk-Fact-D535162ADFEEC5F179DB1ECF8BFCB396" name="us-gaap:OtherOperatingActivitiesCashFlowStatement" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">864</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Changes in operating assets and liabilities&#160;&#8212; (use) source</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts receivable</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1370-wk-Fact-D174410F77DCE474DEA91ECF8C0D9EA9" name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">13,064</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1389-wk-Fact-8314F77A63286F4369E11ECF8C06E65C" name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,920</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1409-wk-Fact-125A4E4E63AF1B79FC6E1ECF8BF8ACC0" name="us-gaap:IncreaseDecreaseInAccountsReceivable" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,251</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Inventory</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1431-wk-Fact-26990B4E6F071712F6081ECF8C27DB7E" name="us-gaap:IncreaseDecreaseInInventories" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">7,307</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1450-wk-Fact-1957BB08AE6CBD3E62991ECF8C23E905" name="us-gaap:IncreaseDecreaseInInventories" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">58,546</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1470-wk-Fact-F4016B4BACBE868CC81C1ECF8BF626FA" name="us-gaap:IncreaseDecreaseInInventories" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,470</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Other assets</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1492-wk-Fact-793493FF6CB46E206C011ECF8BF6F085" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,310</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1512-wk-Fact-4FD1C29627DE60B53CA51ECF8C06E0B9" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,533</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1532-wk-Fact-34F99B4B1FF2D13A5A0D1ECF8C0AA15E" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,562</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Accounts payable</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1554-wk-Fact-02222BFE7887130EDF7C1ECF8C170298" name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">20,536</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1574-wk-Fact-3FF44EA095322EC4AFF21ECF8C17FF6F" name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,470</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1593-wk-Fact-1E0CEC6EFA0233E492321ECF8BF6E5C2" name="us-gaap:IncreaseDecreaseInAccountsPayable" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,457</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Accrued expenses and other liabilities</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1614-wk-Fact-BE82BAD0BBECE8FF42CA1ECF8BFF223D" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">386</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1634-wk-Fact-85A1079F1A77CDB72EBB1ECF8C00D7B4" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,145</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1654-wk-Fact-B3E2875879CD2EF901221ECF8C204186" name="us-gaap:IncreaseDecreaseInOtherAccruedLiabilities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,305</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net cash provided by operating activities</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1675-wk-Fact-12F46712A8DBB66E93C11ECF8C14D2A9" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">130,052</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1694-wk-Fact-B2FADD06C71D2DC928681ECF8C1E7C4D" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">71,685</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1713-wk-Fact-1A6A44B712496E8854D11ECF8C1EED67" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,315</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cash flows from investing activities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Additions of property and equipment</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1796-wk-Fact-2CD74D8077FA364A0A4F1ECF8BFA80B0" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">35,337</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1816-wk-Fact-C4AA4AA87C4E75AC8BFD1ECF8C20FA4E" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,422</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1836-wk-Fact-CBD0DF2E4A0570BA46061ECF8C0D9645" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,371</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Change in other assets</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1858-wk-Fact-0B7A236664114102B3EF1ECF8BF4B05D" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,436</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1878-wk-Fact-753D05CCDB8F9419815C1ECF8C26A96F" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,363</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1898-wk-Fact-9987630EAC4355F91DBD1ECF8BF42AEF" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,542</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Proceeds from sale of equity investments</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1920-wk-Fact-CC0D1EE1367A6BA5A4071ECF8C2068F0" name="us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,787</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1939-wk-Fact-AD392065660D2A2B91451ECF8C0F33E7" name="us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">856</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e1958-wk-Fact-D5C2B39AF8D6A8959FC61ECF8BFD34BE" name="us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,267</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash paid for business acquisitions, net of cash acquired</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e1980-wk-Fact-AD5F9FB9DFFBFBD116D51ECF8C1A673A" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,817</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2000-wk-Fact-57739DB8F53B088221691ECF8BF7291D" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2019-wk-Fact-FBDAD50D4D8C5C1BAAD51ECF8C01E08A" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">148,765</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Purchases of investments</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2041-wk-Fact-F1BDFF9A52BED5DF17BA1ECF8C16299F" name="us-gaap:PaymentsToAcquireAvailableForSaleSecurities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2060-wk-Fact-417FA83194DF4CBF35821ECF8BF4FC74" name="us-gaap:PaymentsToAcquireAvailableForSaleSecurities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,438</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2080-wk-Fact-F511A6331786FA596BC91ECF8BF5C508" name="us-gaap:PaymentsToAcquireAvailableForSaleSecurities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,578</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Sales and maturities of investments</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2102-wk-Fact-960093A15573F1DA28331ECF8C05674C" name="us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,880</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2121-wk-Fact-1FB6672DA436278C7A8D1ECF8BF6FEB9" name="us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2140-wk-Fact-2F233D4D5CB2FAA4FA911ECF8C1FD847" name="us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,066</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net cash used in investing activities</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2161-wk-Fact-FB791AF667EE2C47497C1ECF8BFF2E3D" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">20,923</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2181-wk-Fact-E1CB8599DDACD8C44D8A1ECF8C19E925" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">26,367</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2201-wk-Fact-9DC858C0740F0F032B131ECF8BFE0EC9" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">169,923</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cash flows from financing activities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Proceeds from employee stock plans</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2285-wk-Fact-40E2B328D8F33AB302321ECF8C10C267" name="us-gaap:ProceedsFromStockPlans" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,147</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2304-wk-Fact-8AB1D1EF8BF65E8479CB1ECF8C28758F" name="us-gaap:ProceedsFromStockPlans" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,366</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2323-wk-Fact-9E7E447D8D6FD7C2BC391ECF8C25A59B" name="us-gaap:ProceedsFromStockPlans" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,573</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Income tax withholding payment associated with restricted stock vesting</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2344-wk-Fact-0854863792C79320772B1ECF8C169497" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,277</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2364-wk-Fact-F7895FF8F501078B38351ECF8C072B76" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,532</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2384-wk-Fact-4A9B1E988F3099F99E031ECF8C196089" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,983</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Stock repurchases</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2406-wk-Fact-FBE27EC3F4E4C1BFD6DE1ECF8C03E06E" name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2425-wk-Fact-CAA69835CA6EAB2486131ECF8C215A48" name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2445-wk-Fact-06D068B2BB35869F960A1ECF8C120692" name="us-gaap:PaymentsForRepurchaseOfCommonStock" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net cash (used in) provided by financing activities</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2466-wk-Fact-F4B36AA2FF65284327AB1ECF8C23630E" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">130</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2486-wk-Fact-C8598416011B7BF898211ECF8C16912C" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">43,166</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2506-wk-Fact-B19BC426DFAB8D2BA2FB1ECF8BFC7365" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,590</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Effect of exchange rate changes on cash and cash equivalents</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2527-wk-Fact-53437F2F54D96659B0F21ECF8C271DF8" name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2546-wk-Fact-C0AB589C2EC3F4B8F3181ECF8C01B805" name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">414</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2566-wk-Fact-4D7B550FE2A82FA8DB4B1ECF8C105FA6" name="us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">130</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Net increase (decrease) in cash and cash equivalents</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2587-wk-Fact-E13B3CCA8BAB5D873F871ECF8C20908F" name="us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">109,019</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2606-wk-Fact-DEDBBCC373FF78513A521ECF8C0818C4" name="us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,738</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span>(<ix:nonFraction id="d27587357e2625-wk-Fact-36DAE40DDAFBBE236B641ECF8BFE052C" name="us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">85,888</ix:nonFraction></span></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">)</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash and cash equivalents, at beginning of period</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2648-wk-Fact-1BE67F1DB1C9712C8F741ECF8C02CD51" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">130,373</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2667-wk-Fact-6B98B42768B990333DDE1ECF8BF77ED9" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">128,635</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2686-wk-Fact-652D6B28FED168D4608D1ECF8BF9E455" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2016Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">214,523</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash and cash equivalents, at end of period</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2712-wk-Fact-AA5B5FA1A9ED64DB48E41ECF8C025952" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">239,392</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2731-wk-Fact-1BE67F1DB1C9712C8F741ECF8C02CD51" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">130,373</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2750-wk-Fact-6B98B42768B990333DDE1ECF8BF77ED9" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">128,635</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Supplemental disclosure of cash flow information</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">Cash paid for income taxes</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2833-wk-Fact-B8CED07B11776A3B3A9C1ECF8C2558F7" name="us-gaap:IncomeTaxesPaid" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,582</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2852-wk-Fact-336BE18B421742D0F1291ECF8C022489" name="us-gaap:IncomeTaxesPaid" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">39,517</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><span><ix:nonFraction id="d27587357e2871-wk-Fact-3600822C222BAF2D35CD1ECF8C1109B6" name="us-gaap:IncomeTaxesPaid" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,879</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">See accompanying Notes to Consolidated Financial Statements</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">47</span></div></div><hr style="page-break-after:always"></hr><div><a id="sAF8B15B117B45827BEE31275DD87ACC6"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES&#160;TO CONSOLIDATED FINANCIAL STATEMENTS</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s10608B7222F05F15905FE3D2B1CB6866"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:NatureOfOperations" id="TextSelection-1D6A0D552DA772D02BD01ECF8C40A0BE-0-wk-Fact-086DE3A7BED792DCDDE71ECF8BE23DBC" escape="true"><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:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">1.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Nature of the Business</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">iRobot Corporation ("iRobot" or the "Company") designs and builds robots that empower people to do more. The Company develops robotic technology and applies it to produce and market consumer robots. The Company&#8217;s revenue is primarily generated from product sales through distributor and retail sales channels, as well as its on-line stores.</span></div></ix:nonNumeric><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;"><br/></span></div><div><a id="sC1B83257E4E95F989E7EA97618172682"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-0-wk-Fact-7D223B940233CEEDF9101ECF8B91B5F9" continuedAt="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-1" escape="true"><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="2"></td></tr><tr><td style="width:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">2.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Summary of Significant Accounting Policies</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" id="TextSelection-DC0DBDA573A4B947788B1ECF8C43EB03-0-wk-Fact-7383816661D7161144601ECF8B972AB5" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Basis of Presentation and Foreign Currency Translation</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The accompanying consolidated financial statements include those of iRobot and its subsidiaries, after elimination of all intercompany balances and transactions. iRobot has prepared the accompanying consolidated financial statements in conformity with accounting principles generally accepted in the United States of America ("GAAP"). In addition, certain prior year amounts have been reclassified to conform to the current year presentation.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the Company's subsidiaries that transact in a functional currency other than the U.S. dollar, assets and liabilities are translated into U.S. dollars at period-end foreign exchange rates. Revenues and expenses are translated into U.S. dollars at the average foreign exchange rates for the period. Translation adjustments are excluded from the determination of net income and are recorded in accumulated other comprehensive income (loss), a separate component of stockholders' equity.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:FiscalPeriod" id="TextSelection-D840B69D0942247BEFB71ECF8C43101B-0-wk-Fact-4639210DB1FC82043D551ECF8C0372CA" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company operates and reports using a 52-53&#160;week fiscal year ending on the Saturday closest to December&#160;31. Accordingly, the Company&#8217;s fiscal quarters end on the Saturday that falls closest to the last day of the third month of each quarter.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:UseOfEstimates" id="TextSelection-F4254E78986D99033C551ECF8C41D9DC-0-wk-Fact-D8B08943388F3288B8461ECF8B9AD152" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Use of Estimates</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The preparation of these financial statements in conformity with GAAP requires the Company to make estimates and assumptions that affect the reported amounts of assets and liabilities and revenue and expenses. These estimates and judgments, include but are not limited to, revenue recognition, including performance obligations, variable consideration and other obligations such as product returns and incentives; warranty costs; valuation of goodwill and acquired intangible assets; valuation of financial instruments; accounting for business combinations; evaluating loss contingencies; accounting for stock-based compensation including performance-based assessments; and accounting for income taxes and related valuation allowances. The Company bases these estimates and judgments on historical experience, market participant fair value considerations, projected future cash flows and various other factors that the Company believes are reasonable under the circumstances. Actual results may differ from the Company&#8217;s estimates.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:BusinessCombinationsPolicy" id="TextSelection-1969A94EE50E50CA050A1ECF8C42BB33-0-wk-Fact-0EBD1FA738ED32517D9F1ECF8B960C4C" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Business Combinations </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for transactions that represent business combinations under the acquisition method of accounting. The Company allocates the total consideration paid for each acquisition to the assets it acquires and liabilities it assumes based on their fair values as of the date of acquisition, including identifiable intangible assets. The Company bases the fair value of identifiable intangible assets acquired in a business combination on valuations that use information and assumptions determined by management and which consider management&#8217;s best estimates of inputs and assumptions that a market participant would use. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the business combination date, its estimates and assumptions are inherently uncertain and subject to refinement. As a result, during the measurement period, which is generally one year from the acquisition date, any adjustment to the assets acquired and liabilities assumed is recorded against goodwill in the period in which the amount is determined. Any adjustment identified subsequent to the measurement period is included in operating results in the period in which the amount is determined.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="TextSelection-5AAD21A1C4366BBCF0B71ECF8C41C7B5-0-wk-Fact-6E895609F8048677D0071ECF8C03D662" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cash and Cash Equivalents</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company considers all highly liquid investments with maturity of three months or less at the time of purchase to be cash and cash equivalents. The Company invests its excess cash primarily in money market funds or demand deposit accounts of major financial institutions. Accordingly, its cash and cash equivalents are subject to minimal credit and market risk. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, cash and cash equivalents totaled </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e745-wk-Fact-6807345744BC20FE80F41ECF8B951020" name="us-gaap:CashEquivalentsAtCarryingValue" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">239.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e749-wk-Fact-1AC173CD2BA6CFFE82911ECF8B9B5369" name="us-gaap:CashEquivalentsAtCarryingValue" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">130.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. These cash and cash equivalents are carried at cost, which approximates fair value.</span></div></ix:nonNumeric></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">48</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-1" continuedAt="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-2"><ix:nonNumeric contextRef="FD2019Q4YTD" name="irbt:ShortTermInvestmentsPolicyTextBlock" id="TextSelection-A279C12EA5B7421345DF1ECF8C40E93A-0-wk-Fact-1A5C9037C9D96F80D8761ECF8C0553AE" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Short Term Investments</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s investments are classified as available-for-sale and are recorded at fair value with any unrealized gain or loss recorded as an element of stockholders&#8217; equity. The fair value of investments is determined based on quoted market prices at the reporting date for those instruments. Investments consisted of the following (in thousands):</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:AvailableForSaleSecuritiesTextBlock" id="TextSelection-9DDEA74DD3C17466E2D91ECF8C411435-0-wk-Fact-1160143AECFE44BDC10F1ECF8B9CCAB6" escape="true"><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:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e985-wk-Fact-B1F9D7AF1F257CFAAD271ECF8BF91EF1" name="us-gaap:AvailableForSaleSecuritiesAmortizedCost" contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,016</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1004-wk-Fact-E55D4AF895742A04B9CC1ECF8BF80850" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,032</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1023-wk-Fact-7841D9AEADB1B492AB4C1ECF8BF8CF03" name="us-gaap:AvailableForSaleSecuritiesAmortizedCost" contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,035</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1043-wk-Fact-36469210EBD5EAE930F31ECF8BF73101" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">29,605</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1058-wk-Fact-EDFFF3F63AE25AFDAE0F1ECF8BF9A592" name="us-gaap:AvailableForSaleSecuritiesAmortizedCost" contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1077-wk-Fact-325F118DE61BAB54927F1ECF8BFBA5C3" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1096-wk-Fact-78BA89E64F3DD5390CAA1ECF8BF78A94" name="us-gaap:AvailableForSaleSecuritiesAmortizedCost" contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1116-wk-Fact-1FD4BF45D59B3910DABD1ECF8BFB3A0B" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total short term investments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1141-wk-Fact-832464EE910B20D2443D1ECF8BFABBCC" name="us-gaap:AvailableForSaleSecuritiesAmortizedCost" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,016</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1160-wk-Fact-331B0FD69B5949B7F76A1ECF8B9118DB" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,032</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1179-wk-Fact-D9E46CE9707BD574AD671ECF8BF8C507" name="us-gaap:AvailableForSaleSecuritiesAmortizedCost" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,035</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1199-wk-Fact-A4D6B258120F8233859E1ECF8C01C12E" name="us-gaap:AvailableForSaleSecuritiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,605</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company&#8217;s investments had maturity dates ranging from February 2020 to March 2021. The Company invests primarily in investment grade securities and limits the amount of investment in any single issuer.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ReceivablesPolicyTextBlock" id="TextSelection-7CD20E1636AB18C8FA4B1ECF8C42F05C-0-wk-Fact-B5662FFAB51F25D450701ECF8B931714" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Accounts receivable allowances</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for product returns</span><span style="font-family:inherit;font-size:10pt;">: The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for other credits and incentives: </span><span style="font-family:inherit;font-size:10pt;">The Company records an allowance related to customer incentives such as discounts, promotions, price protection and other support programs. The allowance is based on specific terms and conditions included in customer agreements, specific programs and historical experience.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for doubtful accounts</span><span style="font-family:inherit;font-size:10pt;">: The Company records an allowance for doubtful accounts for the estimated amount of accounts receivable that may not be collected based on an assessment of the potential risk of loss associated with delinquent accounts. The allowance including the activity within the allowance was immaterial for fiscal years 2019, 2018 and 2017. The balance at December 28, 2019 was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e1303-wk-Fact-C37E805A5A06599BD8822FFED6FD0F86" name="us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="irbt:ScheduleOfAccountsReceivableAllowancesTableTextBlock" id="TextSelection-09B19C39115FAFA7F0661ECF8C4050F7-0-wk-Fact-A8E34F8AA263DC10DB991ECF8B9E2BE3" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Activity related to accounts receivable allowances was as follows (in thousands):</span><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:62%;"></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:10%;"></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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Allowance for product returns</span></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="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1532-wk-Fact-DE0F159C6C34002232161ECF8BD7A880" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,920</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1551-wk-Fact-0E66A616568CBC7F67DF1ECF8BD985C8" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">42,693</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1570-wk-Fact-5CFA3C67648202FD06041ECF8BD963CD" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">27,673</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquired balance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1586-wk-Fact-E9835B286084034C77131ECF8BE2D75A" name="us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1605-wk-Fact-2DA6CDF05EF143AC967E1ECF8BD8EFD8" name="us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1624-wk-Fact-F1D7C94194845FA639A81ECF8BDB9276" name="us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,088</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1645-wk-Fact-977232137F68BDAB6D9A1ECF8BE05762" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">71,575</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1664-wk-Fact-EBF06800EF400082BD401ECF8BDA2A2E" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">68,476</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1683-wk-Fact-6AFE51B239075AD93BE51ECF8BE345C8" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">54,981</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e1704-wk-Fact-122E0E67B19DC561E02D1ECF8BDA9F67" name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">68,217</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e1724-wk-Fact-F94512A9D88A79BADC771ECF8BD81538" name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">56,164</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e1744-wk-Fact-88784C2066C35C027CA21ECF8BE1E641" name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">43,831</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e1766-wk-Fact-CC6862012BF042ECF9E61ECF8BDC5CF0" name="us-gaap:ValuationAllowancesAndReservesAdjustments" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,087</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e1786-wk-Fact-E08E1CB88C6724645B9B1ECF8BD7E3B8" name="us-gaap:ValuationAllowancesAndReservesAdjustments" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,085</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e1806-wk-Fact-609A0CE1D5FFD322CE151ECF8BE08677" name="us-gaap:ValuationAllowancesAndReservesAdjustments" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,218</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1833-wk-Fact-F6FD760ECBDB55CD3DBA1ECF8BE1911B" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">55,191</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1852-wk-Fact-DE0F159C6C34002232161ECF8BD7A880" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,920</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e1871-wk-Fact-0E66A616568CBC7F67DF1ECF8BD985C8" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">42,693</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Allowance for other credits and incentives</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2017-wk-Fact-2148BF45499EE4FD706A1ECF8BE18FD4" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">97,737</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2036-wk-Fact-9E857D061804936A16951ECF8BDD32F4" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">61,359</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2055-wk-Fact-5EEA097EC6F42099230B1ECF8BDBD931" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,658</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquired balance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2071-wk-Fact-7CFC8AE6A7FA9FB4C6ED1ECF8BDD9081" name="us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2090-wk-Fact-135F0D45FC758CB415F51ECF8BE03249" name="us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2109-wk-Fact-319CDAD03C77DE5A4A951ECF8BD7658F" name="us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,932</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Adjustment related to adoption of ASC 606</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2130-wk-Fact-C7B3CC3EEC2BFB1996BA1ECF8BDDBCBB" name="us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2149-wk-Fact-D416210E9F66273D25353A3770C18DE8" name="us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,192</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2168-wk-Fact-D0DE7186A9E004D91E6E1ECF8BDF2A3F" name="us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2189-wk-Fact-7B8643EC39DE608A35811ECF8BD9D5F0" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">287,891</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2208-wk-Fact-073FC6DC30E8153C45A01ECF8BDC863D" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">198,371</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2227-wk-Fact-7C6B4F1F56C49BC26A091ECF8BD8C162" name="us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">110,605</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e2248-wk-Fact-A18BE11F0666B1C6871F1ECF8BDEB08C" name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">247,775</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e2268-wk-Fact-597663EDFED1AEE6B1F51ECF8BDEB02A" name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">161,672</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e2288-wk-Fact-03764C06149320F4E4431ECF8BDF1E00" name="us-gaap:ValuationAllowancesAndReservesDeductions" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,269</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e2310-wk-Fact-7A9978E3CE071F07D1851ECF8BE09E32" name="us-gaap:ValuationAllowancesAndReservesAdjustments" contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">3,807</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e2330-wk-Fact-FADF311628B29B8C4C851ECF8BE368A4" name="us-gaap:ValuationAllowancesAndReservesAdjustments" contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,513</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27599394e2350-wk-Fact-3B499E218223595BF2421ECF8BDF02B6" name="us-gaap:ValuationAllowancesAndReservesAdjustments" contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">3,567</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2377-wk-Fact-9A84C53259EA44ADDEFD1ECF8BE21062" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">134,046</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2396-wk-Fact-2148BF45499EE4FD706A1ECF8BE18FD4" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">97,737</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2415-wk-Fact-9E857D061804936A16951ECF8BDD32F4" name="us-gaap:ValuationAllowancesAndReservesBalance" contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">61,359</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:InventoryPolicyTextBlock" id="TextSelection-1F9A0F721967616CB2B61ECF8C41F676-0-wk-Fact-7E3A37EBF8D941DF9FEB1ECF8B9DB873" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Inventory</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory is stated at the lower of cost or net realizable value with cost being determined using the first-in, first-out method. The Company maintains a reserve for inventory items to provide for an estimated amount of excess or obsolete inventory.</span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">49</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-2" continuedAt="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-3"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:StandardProductWarrantyPolicy" id="TextSelection-166B793A58FAFF56BBB91ECF8C426A0A-0-wk-Fact-519D264C171740CCBEB61ECF8C0DB2D3" escape="true"><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Warranty</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company typically provides a one-year or two-year warranty against defects in materials and workmanship and will either repair the goods, provide replacement products or refund amounts to the customer for defective product. The Company records estimated warranty costs based on historical experience, at the time revenue is recognized.  Actual results could differ from these estimates, which could cause increases or decreases to the warranty reserves in future periods.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="TextSelection-D00CF11139B4EBF9EF561ECF8C41C402-0-wk-Fact-A645D3D7CFA26DA434751ECF8B99031C" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Property and Equipment</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment are recorded at cost and consist primarily of computer equipment, leasehold improvements, business applications software, tooling and machinery. <ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PropertyPlantAndEquipmentTextBlock" id="TextSelection-B22AEB1AC9AF590B933D1ECF8C435CDC-0-wk-Fact-7B67B364A4CB4F9380531ECF8B9499CC" continuedAt="TextSelection-B22AEB1AC9AF590B933D1ECF8C435CDC-1" escape="true">Depreciation is computed using the straight-line method over the estimated useful lives as follows:</ix:nonNumeric></span></div><ix:continuation id="TextSelection-B22AEB1AC9AF590B933D1ECF8C435CDC-1" continuedAt="TextSelection-0505DFA0A2411FA9553C1ECF8C45D94F-0"><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="3"></td></tr><tr><td style="width:59%;"></td><td style="width:40%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Estimated Useful&#160;Life</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5 years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3-7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27599394e2611-wk-Fact-F618EEC9715649E629EF1ECF8B928CBB" name="irbt:LeaseholdImprovementsTerms" contextRef="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember">Lesser of economic benefit period or term&#160;of&#160;lease</ix:nonNumeric></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expenditures for additions and betterments of property and equipment are capitalized. Expenditures for repairs and maintenance are charged to expense as incurred. As assets are retired or sold, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recognized.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock" id="TextSelection-5BE50032C2E1F568A80C1ECF8C429CB1-0-wk-Fact-3F8A7AD475B0C67A07D91ECF8B956B88" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Goodwill and Other Long-Lived Assets</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Goodwill represents the excess of the purchase price in a business combination over the fair value of the net tangible and intangible assets acquired. Goodwill is not amortized but rather is assessed for impairment at the reporting unit level annually during its fourth quarter of each fiscal year or more frequently if the Company believes indicators of impairment exist. Goodwill impairment, if any, is determined by comparing the reporting unit's fair value to its carrying value. An impairment loss is recognized in an amount equal to the excess of the reporting unit's carrying value over its fair value, up to the amount of goodwill allocated to the reporting unit.&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other long-lived assets consist principally of completed technology, tradename, customer relationships, reacquired distribution rights and non-competition agreements. Reacquired distribution rights are amortized on an accelerated basis while all other intangible assets are amortized over their respective estimated useful lives on a straight-line basis, consistent with the pattern in which the economic benefits are being utilized. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company periodically evaluates the recoverability of other long-lived assets whenever events and changes in circumstances, such as reductions in demand or significant economic slowdowns in the industry, indicate that the carrying amount of an asset may not be fully recoverable. When indicators of impairment are present, the carrying values of the asset group are evaluated in relation to the future undiscounted cash flows of the underlying business. The net book value of the underlying asset is adjusted to fair value if the sum of the expected discounted cash flows is less than book value. Fair values are based on estimates of market prices and assumptions concerning the amount and timing of estimated future cash flows and assumed discount rates, reflecting varying degrees of perceived risk.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impairment assessment of goodwill and other long-lived assets involves significant estimates and assumptions, which may be unpredictable and inherently uncertain. These estimates and assumptions include identification of reporting units and asset groups, long-term growth rates, profitability, estimated useful lives, comparable market multiples, and discount rates. Any changes in these assumptions could impact the result of the impairment assessment. There was no impairment of goodwill or other long-lived assets during fiscal 2019, 2018 and 2017.</span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">50</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-3" continuedAt="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-4"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:InvestmentPolicyTextBlock" id="TextSelection-47E5BB63678CC45CC5BD1ECF8C420F62-0-wk-Fact-537D5601C8ADD88B9DF31ECF8BA03406" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Other Assets</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company holds non-marketable equity securities as part of its strategic investments portfolio. The Company classifies the majority of these securities as equity securities without readily determinable fair values and measures these investments at cost, less any impairment, adjusted for observable price changes. These investments are valued using significant unobservable inputs or data in an inactive market and the valuation requires the Company's judgment due to the absence of market prices and inherent lack of liquidity. The estimated fair value is based on quantitative and qualitative factors including, but not limited to, subsequent financing activities by the investee and projected discounted cash flows. At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, other assets consisted primarily of equity securities without readily determinable fair values and an equity method investment totaling&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2704-wk-Fact-C292393153D07E86F3551ECF8BA1040C" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">21.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2708-wk-Fact-0641CD0756EAF229E91F1ECF8BA3AA45" name="us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">15.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. On October 17, 2019, the Company disposed of one of its non-marketable equity securities, resulting in a gain of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2713-wk-Fact-95496A4AC263325491DB2FFAEA585CE8" name="us-gaap:GainLossOnSaleOfEquityInvestments" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">8.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> which was recorded in other income, net. In January 2020, Teladoc Health, Inc. announced that it had entered into a definitive agreement to acquire InTouch Health, one of the Company's strategic investees, with an expected closing date of no later than June 30, 2020. The Company expects to record a gain in other income, net at closing.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DerivativesPolicyTextBlock" id="TextSelection-8462E0EEC156D7FC4A9F1ECF8C43F422-0-wk-Fact-E6D8B6FF4D5D149F514A1ECF8C0F3278" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Financial Instruments and Hedging Activities</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company utilizes derivative instruments to hedge specific financial risks including foreign exchange risk. The Company does not engage in speculative hedging activity. In order to account for a derivative instrument as a hedge, specific criteria must be met, including: (i) ensuring at the inception of the hedge that formal documentation exists for both the hedging relationship and the entity&#8217;s risk management objective and strategy for undertaking the hedge and (ii) at the inception of the hedge and on an ongoing basis, the hedging relationship is expected to be highly effective in achieving offsetting changes in fair value attributed to the hedged risk during the period that the hedge is designated. Further, an assessment of effectiveness is required whenever financial statements or earnings are reported. Absent meeting these criteria, changes in fair value are recognized in other income, net, in the consolidated statements of income. Once the underlying forecasted transaction is realized, the gain or loss from the derivative designated as a hedge of the transaction is reclassified from accumulated other comprehensive income (loss) to the statement of income, in revenue or cost of revenue. </span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="TextSelection-9D05DBCFE229850FFBA71ECF8C436E39-0-wk-Fact-3EB1F7AADAB98E10E1841ECF8BFF6E7E" continuedAt="TextSelection-9D05DBCFE229850FFBA71ECF8C436E39-1" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Fair Value Measurements</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for certain assets and liabilities at fair value. The fair value is established based on a three-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value. These tiers include: </span></div><div style="line-height:120%;padding-left:48px;padding-top:6px;text-indent:30px;"><span style="padding-top:6px;font-family:inherit;font-size:10pt;padding-right:18px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">Level 1 - observable inputs such as quoted prices for identical instruments in active markets; </span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:78px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 2 - inputs other than quoted prices in active markets that are either directly or indirectly observable; and </span></div></td></tr></table></ix:nonNumeric><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><ix:continuation id="TextSelection-9D05DBCFE229850FFBA71ECF8C436E39-1" continuedAt="TextSelection-9D05DBCFE229850FFBA71ECF8C436E39-2"><div style="line-height:120%;font-size:10pt;padding-left:78px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></ix:continuation></td><td style="vertical-align:top;"><ix:continuation id="TextSelection-9D05DBCFE229850FFBA71ECF8C436E39-2"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 3 - unobservable inputs in which little or no market data exists, therefore requiring an entity to develop its own assumptions.</span></div></ix:continuation></td></tr></table><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="TextSelection-AEE58EA80488661012271ECF8C415025-0-wk-Fact-7C5D10E76BCD1B2795061ECF8B9AF0DE" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Stock-Based Compensation</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for stock-based compensation through recognition of the fair value of the stock-based compensation as a charge against earnings. The fair value of employee stock options is estimated at the grant date using the Black-Scholes option-pricing model. The fair value for time-based restricted stock units and performance-based restricted stock units is based on the closing share price of the Company's common stock on the date of grant. For performance-based restricted stock units, the compensation cost is recognized based on the number of units expected to vest upon the achievement of the performance conditions. The Company recognizes stock-based compensation as an expense on a straight-line basis, over the requisite service period. The Company accounts for forfeitures as they occur, rather than applying an estimated forfeiture rate.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ResearchAndDevelopmentExpensePolicy" id="TextSelection-E92D4CBB1F6C590DF4131ECF8C41FAA8-0-wk-Fact-15D709D1BD6D7CEC8D161ECF8B91CA5C" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Research and Development</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Costs incurred in the research and development of the Company&#8217;s products are expensed as incurred.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:AdvertisingCostsPolicyTextBlock" id="TextSelection-06E0C9F9626BBD4736701ECF8C420010-0-wk-Fact-ED24D644B969A7CED3B61ECF8C02C8ED" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Advertising Expense</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company expenses advertising costs as they are incurred. During the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> advertising expense totaled </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2837-wk-Fact-682D96A50AAD241392151ECF8B9E8FA7" name="us-gaap:AdvertisingExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">125.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2841-wk-Fact-D485BA4D438A0315DEF51ECF8B9BD8AA" name="us-gaap:AdvertisingExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">114.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2846-wk-Fact-364C878EC734E162E8EA1ECF8B9F4D62" name="us-gaap:AdvertisingExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">91.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, and are recorded within the selling and marketing expenses in its consolidated statements of income. </span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">51</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-4" continuedAt="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-5"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:IncomeTaxPolicyTextBlock" id="TextSelection-3B8E033DCBDBC3CE863F1ECF8C420421-0-wk-Fact-7E76F671C8C7D27C78D71ECF8C065C3F" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Income Taxes</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets and liabilities are determined based on the difference between the financial statement and tax basis using enacted tax rates in effect in the years in which those temporary differences are expected to be recovered or settled in each jurisdiction. A valuation allowance is provided if, based upon the weight of available evidence, it is more likely than not that the related benefits will not be realized. The Company regularly reviews the deferred tax assets for recoverability considering historical profitability, projected future taxable income, future reversals of existing taxable temporary differences, as well as feasible tax planning strategies in each jurisdiction. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and December 30, 2017, the Company had a valuation allowance of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2870-wk-Fact-6E9281150BF1BFDAA0841ECF8B95D50C" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">3.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2874-wk-Fact-21156A7A99DFAA8E9A881ECF8B91B85E" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27599394e2878-wk-Fact-1D479B52ED490C19B1AE1ECF8B9287BB" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2017Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">0.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, for certain deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company reports a liability for unrecognized tax benefits resulting from uncertain tax positions taken or expected to be taken in a tax return. The Company recognizes interest and penalties, if any, related to unrecognized tax benefits in the income tax provision.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code of 1986, as amended (the "Internal Revenue Code"). Effective for the Company&#8217;s 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign-Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of $11.9 million in the fourth quarter of 2017 which included a provisional amount of $8.9 million related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and $3.0 million related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and there were no material adjustments to the provisional amounts recorded.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ConcentrationRiskDisclosureTextBlock" id="TextSelection-FBBE44201493D380598B1ECF8C4105AA-0-wk-Fact-73473BCEFFAB04E8ED981ECF8B92571C" continuedAt="TextSelection-FBBE44201493D380598B1ECF8C4105AA-1" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Concentration of Credit Risk and Significant Customers</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financial instruments which potentially expose the Company to concentrations of credit risk consist of accounts receivable and cash and cash equivalents. Management believes its credit policies are prudent and reflect normal industry terms and business risk. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">two</span><span style="font-family:inherit;font-size:10pt;"> customers accounted for a total of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2917-wk-Fact-3A00533F8F253CAD77D61ECF8B934E0C" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">26.6</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2921-wk-Fact-4027027AB8F0B1E170A535EB8F94AF25" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">23.1</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of the Company's accounts receivable balance, respectively. For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, the Company generated </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2938-wk-Fact-ED14B6DDEE939662FF511ECF8BA09D9E" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">21.3</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2942-wk-Fact-32DB3A8BE91F98C342C21ECF8BFF3D7A" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">17.3</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e2946-wk-Fact-479A5FCB40C7377A4B3820EDC5D6089C" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">13.5</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, of total revenue from one of its retailers (Amazon). </span></div></ix:nonNumeric><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-FBBE44201493D380598B1ECF8C4105AA-1">The Company maintains its cash in bank deposit accounts and money market funds at high quality financial institutions. The individual balances, at times, may exceed federally insured limits.</ix:continuation> </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:EarningsPerSharePolicyTextBlock" id="TextSelection-F62420BF0748771E00E21ECF8C409FE7-0-wk-Fact-DB042CEC2EB3FAC95E0F1ECF8C07CF19" continuedAt="TextSelection-F62420BF0748771E00E21ECF8C409FE7-1" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Net Income Per Share</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Basic income per share is calculated using the Company's weighted-average outstanding common shares. Diluted income per share is calculated using the Company's weighted-average outstanding common shares including the dilutive effect of stock awards as determined under the treasury stock method. <ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="TextSelection-9483564F9D548AD2D7CD1ECF8C436F49-0-wk-Fact-9DF33B16F58907CEDA661ECF8C03750D" continuedAt="TextSelection-9483564F9D548AD2D7CD1ECF8C436F49-1" escape="true">The following table presents the calculation of both basic and diluted net income per share:</ix:nonNumeric></span></div><ix:continuation id="TextSelection-9483564F9D548AD2D7CD1ECF8C436F49-1"><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="12"></td></tr><tr><td style="width:59%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3173-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">85,300</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3192-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">87,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3211-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE" name="us-gaap:NetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">50,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Weighted-average shares outstanding</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3227-wk-Fact-74F5245149CE79111EAC1ECF8C2C0770" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,097</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3246-wk-Fact-887416FC7A4B00F3B6331ECF8C14B1E8" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">27,692</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3265-wk-Fact-B4142115B6E2E0E768601ECF8C197AE3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">27,611</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Dilutive effect of employee stock plans</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3286-wk-Fact-AA30E3C68F09DF7C946B1ECF8C1E1E27" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">638</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3305-wk-Fact-6748F3A8C0DD22BEFCCD1ECF8C1DE1F8" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">948</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3324-wk-Fact-7E29CC47B7446BFADC7D1ECF8C26F998" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">1,142</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted weighted-average shares outstanding</span></div></td><td colspan="2" 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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3345-wk-Fact-3400E7FA01B76C78B8141ECF8C194494" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,735</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3364-wk-Fact-9D4BCD49EE27BC5D19911ECF8BCBEAAF" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,640</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3383-wk-Fact-1672EE9525AC62469A941ECF8C06E2C6" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-3" scale="3" format="ixt:numdotdecimal">28,753</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Basic income per share</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3409-wk-Fact-4EA4B5D2424F553CAF431ECF8C0E8F54" name="us-gaap:EarningsPerShareBasic" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.04</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3428-wk-Fact-FE33DC5020FD0D6DAE2C1ECF8C23CC4F" name="us-gaap:EarningsPerShareBasic" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.18</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3447-wk-Fact-BB8B39A2D003DD0E29AD1ECF8BCD70AF" name="us-gaap:EarningsPerShareBasic" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.85</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted income per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3468-wk-Fact-943D1DF1A869B1A145301ECF8BCDE983" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">2.97</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3487-wk-Fact-7706267A6D11A924F1B91ECF8C2C9748" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">3.07</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3506-wk-Fact-09F8AEEA4540A4A741A71ECF8C04C5E7" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.77</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">52</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-5" continuedAt="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-6"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><ix:continuation id="TextSelection-F62420BF0748771E00E21ECF8C409FE7-1" continuedAt="TextSelection-F62420BF0748771E00E21ECF8C409FE7-2"><span style="font-family:inherit;font-size:10pt;">Restricted stock units and stock options representing approximately </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3525-wk-Fact-6F8BDD1508CB9F61211B1ECF8B98E5AE" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="FD2019Q4YTD" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">0.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3529-wk-Fact-C883BD8E14BB230005091ECF8B94224A" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="FD2018Q4YTD" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">0.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27599394e3533-wk-Fact-A4680C18DD284AB5CE111ECF8B9768AD" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" contextRef="FD2017Q4YTD" unitRef="shares" decimals="-5" scale="6" format="ixt:numdotdecimal">0.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> shares of common stock for the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-F62420BF0748771E00E21ECF8C409FE7-2">, respectively, were excluded from the computation of diluted earnings per share as their effect would have been antidilutive.</ix:continuation> </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="TextSelection-B51FBBD2A005537A30F91ECF8C42C87E-0-wk-Fact-4961399A2E8D58FF91441ECF8B9FC319" continuedAt="TextSelection-B51FBBD2A005537A30F91ECF8C42C87E-1" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Recently Adopted Accounting Standards</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2018, the Financial Accounting Standards Board ("FASB") issued&#160;Accounting Standards Update ("ASU") No.&#160;2018-07,&#160;"Compensation - Stock Compensation: Improvements to Nonemployee Share-Based Payment Accounting&#160;(Topic 718)." The amendments in&#160;ASU&#160;No. 2018-07&#160;expand the scope of Topic 718&#160;to include share-based payments issued to nonemployees for goods or services. The amendments in this ASU are effective for annual periods beginning after December 15, 2018 and interim periods within those annual periods, with early adoption permitted. The Company adopted this standard effective December 30, 2018 which did not have a material impact on the Company's consolidated financial statements and related disclosures.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In February 2016, the FASB issued ASU No. 2016-02&#160;"Leases." This ASU and subsequently issued amendments require lessees to recognize the assets and liabilities on their balance sheet for the rights and obligations created by most leases and continue to recognize expenses on their income statements over the lease term.&#160;The standard also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows arising from leases. In July 2018, the FASB issued ASU No. 2018-11, "Leases (Topic 842): Targeted Improvements," which provide an alternative transition method that entities can elect when adopting the new standard. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company adopted the standard effective December 30, 2018 using the alternative transition method which resulted in the recognition of operating lease right-of-use assets and operating lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The Company's consolidated financial statements as of and for the year ended December&#160;28, 2019 are presented under the new standard, while the comparative fiscal years presented are not adjusted and continue to be reported in accordance with the historical accounting policy. See Note 4, "Leases," for the required disclosures related to the impact of adopting this standard and a discussion of the Company's updated policies related to lease accounting.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Recently Issued Accounting Standards</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In December 2019, the FASB issued ASU No. 2019-12, "Income Taxes - Simplifying the Accounting for Income Taxes." The ASU simplifies the accounting for income taxes by removing certain exceptions to the general principles as well as clarifying and amending existing guidance to improve consistent application. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020, with early adoption permitted. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective or prospective basis. The Company intends to adopt the ASU effective January 3, 2021, and is currently evaluating the impact to the consolidated financial statements. </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In August 2018, the FASB issued ASU No. 2018-15, "Intangibles - Goodwill and Other Internal-Use Software." The new standard aligns 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 (and hosting arrangements that include an internal use software license). The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019, with early adoption permitted. Implementation should be applied either retrospectively or prospectively to all implementation costs incurred after the date of adoption. The Company intends to adopt the ASU using the prospective method effective December 29, 2019, and does not expect the new standard will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In August 2018, the FASB issued ASU No. 2018-13, "Fair Value Measurement: Disclosure Framework&#8212;Changes to the Disclosure Requirements for Fair Value Measurement." The amendment modifies disclosure requirements related to fair value measurement. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019. Implementation on a prospective or retrospective basis varies by specific disclosure requirement. Early adoption is permitted. The standard also allows for early adoption of any removed or modified disclosures upon issuance of this ASU while delaying adoption of the additional disclosures until their effective date. The Company does not believe this amendment will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2016, the FASB issued ASU No. 2016-13, "Measurement of Credit Losses on Financial Instruments," which amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments. This may result in the earlier recognition of allowances for losses. The guidance is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years, with early adoption permitted.&#160;The Company intends to adopt the ASU effective December 29, 2019. The Company does not believe the new standard will have a material impact on its consolidated financial statements.</span></div></ix:nonNumeric></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">53</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-B51FBBD2A005537A30F91ECF8C42C87E-1"><ix:continuation id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-6"><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time, new accounting pronouncements are issued by FASB that are adopted by the Company as of the specified effective date. Unless otherwise discussed, the Company believes that recently issued standards, which are not yet effective, will not have a material impact on the Company&#8217;s consolidated financial statements upon adoption.</span></div></ix:continuation></ix:continuation><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s3A55585D96615C7998310882AAD95B3B"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="TextSelection-E958B8658F411173ED991ECF8C44B79E-0-wk-Fact-297876626B80FCC598BB1ECF8C2E43CD" continuedAt="TextSelection-E958B8658F411173ED991ECF8C44B79E-1" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">3.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Revenue Recognition</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company primarily derives its revenue from product sales. The Company sells products directly to consumers through on-line stores and indirectly through resellers and distributors. Revenue is recognized upon transfer of control of promised products or services to customers, generally as title and risk of loss pass, in an amount that reflects the consideration the Company expects to receive in exchange for those products or services. Revenue is recognized only to the extent that it is probable that a significant reversal of revenue will not occur. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from revenue. Shipping and handling expenses are considered fulfillment activities and are expensed as incurred.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s product portfolio includes various consumer robots, many of which are Wi-Fi connected. The consumer robots are generally highly dependent on, and interrelated with, the embedded software and cannot function without the software. As such, the consumer robots are accounted for as a single performance obligation, and the revenue is recognized at a point in time when the control is transferred to distributors, resellers or directly to end customers through online stores. For consumer robots with Wi-Fi capability ("connected robots"), each sale represents an arrangement with multiple promises consisting of the robot, an app, cloud services and potential future unspecified software upgrades. The Company has determined that the app, cloud services and potential future unspecified software upgrades represent one promised service to the customer to enhance the functionality and interaction with the robot (referred to collectively as "Cloud Services"). </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Prior to the adoption of ASU No. 2014-09, "Revenue from Contracts with Customers," ("ASC 606") on December 31, 2017, the beginning of fiscal year 2018, the revenue allocated to the Cloud Services was deferred and recognized on a straight-line basis over the expected life of the connected robot. On December 31, 2017, the Company adopted ASC 606 using the modified retrospective method applied to those contracts that were not completed as of the adoption date. Upon ASC 606, the Company concluded that, on a quantitative and qualitative basis, the Cloud Services did not constitute a material performance obligation for the then existing products and, as such, these services were not considered a separate performance obligation that required allocation of transaction price. Under the modified retrospective method, the Company recognized the cumulative effect of the adoption and recorded a net increase of $1.0 million to the beginning retained earnings as of December 31, 2017. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During the third quarter of 2018, the Company launched Roomba i7 and i7+ which brought a new level of intelligence and automation to robotic vacuum cleaners with the ability to learn, map and adapt to a home's floor plan. The Company has concluded that beginning with this launch, the Cloud Services related to these new products are a material performance obligation. For contracts that contain multiple performance obligations, the transaction price is allocated to each performance obligation based on a relative standalone selling price ("SSP"). The SSP reflects the Company's best estimate of what the selling prices of elements would be if they were sold regularly on a standalone basis. Revenue allocated to the robots is recognized at a point in time when control is transferred. Revenue allocated to the Cloud Services is deferred and recognized on a straight-line basis over the estimated period the software upgrades and services are expected to be provided. For contracts with a duration of greater than one year, the transaction price allocated to performance obligations that are unsatisfied as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> are not material. The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected duration of one year or less.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s products generally carry a one-year or two-year limited warranty that promises customers that delivered products are as specified. The Company does not consider these assurance-type warranties as a separate performance obligation and therefore, the Company accounts for such warranties under ASC 460,&#160;"Guarantees."</span></div></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">54</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-E958B8658F411173ED991ECF8C44B79E-1"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company provides limited rights of returns for direct-to-consumer sales generated through its on-line stores and certain resellers and distributors. The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns. In addition, the Company may provide other credits or incentives which are accounted for as variable consideration when estimating the amount of revenue to recognize. Where appropriate, these estimates take into consideration relevant factors such as the Company&#8217;s historical experience, current contractual requirements, specific known market events and forecasted inventory level in the channels. Overall, these reserves reflect the Company&#8217;s best estimates, and the actual amounts of consideration ultimately received may differ from the Company&#8217;s estimates. Returns and credits are estimated at contract inception and updated at the end of each reporting period as additional information becomes available.  As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company has reserves for product returns of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594034e663-wk-Fact-08A9C020767BFD1CDC371ECF8C17DCFA" name="irbt:Refundliabilityproductreturns" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">55.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and other credits and incentives of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594034e667-wk-Fact-2E20B2689AB5CAFB92E91ECF8C0C243A" name="irbt:Refundliabilityothercreditsandincentives" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">134.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company had reserves for product returns of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594034e675-wk-Fact-45532713CCC0314D2D401ECF8C1D090F" name="irbt:Refundliabilityproductreturns" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">53.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and other credits and incentives of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594034e680-wk-Fact-0612B2E98453AE2D867E1ECF8C09A193" name="irbt:Refundliabilityothercreditsandincentives" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">97.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. Revenue recognized during the years ended December 28, 2019 and December 29, 2018 related to performance obligations satisfied in a prior period was not material. </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="TextSelection-EBA913E142490E6414D01ECF8C44FE0C-0-wk-Fact-903D6027B36E1CBBF16C1ECF8B938601" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Disaggregation of Revenue</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about disaggregated revenue by geographical region (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"></td></tr><tr><td style="width:58%;"></td><td style="width:1%;"></td><td style="width:19%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:19%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">United States</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e758-wk-Fact-84FBA43C779765FDFAB51ECF8B99C6F7" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_country_US" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">603,618</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e772-wk-Fact-2D48EEBF3BED10F0A77820F8182AC9D0" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_country_US" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">560,995</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">EMEA</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e787-wk-Fact-1A395C3089C7AB3961B31ECF8B9BBE54" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">357,760</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e801-wk-Fact-4403E6E069FF17BBBFD520F848C42F56" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">311,659</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e821-wk-Fact-D728F117DF8E221BA07D1ECF8B9AF3EA" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">252,632</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e835-wk-Fact-FBD153A38DB5443EC24220F877D17B92" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">219,930</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e860-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49" name="us-gaap:Revenues" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,214,010</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e874-wk-Fact-989EE34444750D4496461ECF8BCC77EC" name="us-gaap:Revenues" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,092,584</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" id="TextSelection-1DFA172846CC787AB31C1ECF8C43A036-0-wk-Fact-50EF83DADAEF2B6856F31ECF8C2F6CA5" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Contract Balances </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about receivables and contract liabilities from contracts with customers (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"></td></tr><tr><td style="width:57%;"></td><td style="width:1%;"></td><td style="width:19%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:19%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e962-wk-Fact-533C478FD3AB27E53CF21ECF8BFC7249" name="us-gaap:AccountsAndOtherReceivablesNetCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">146,161</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e981-wk-Fact-1266FAB35552695887F91ECF8B9F1522" name="us-gaap:AccountsAndOtherReceivablesNetCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">162,166</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Contract liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e996-wk-Fact-676227EFE70098601A1C1ECF8C0B91D4" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,991</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594034e1015-wk-Fact-021B737E6E1D4193BC141ECF8C0BF50E" name="us-gaap:ContractWithCustomerLiability" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,756</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company invoices customers based upon contractual billing schedules, and accounts receivable are recorded when the right to consideration becomes unconditional. Contract liabilities primarily relate to prepayments received from customers in advance of product shipments. The change in the opening and closing balances of the Company&#8217;s contract assets and contract liabilities primarily results from the timing difference between the Company&#8217;s performance and the customer&#8217;s payment. During the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594034e1037-wk-Fact-50362AB9DE81AA2F4AC5300953C622BA" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">5.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594034e1041-wk-Fact-1F6A93285F8ADE1C2FB91ECF8C1BD3AF" name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, of the contract liability balance as revenue upon transfer of the products to customers. </span></div></ix:nonNumeric><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Practical Expedients and Exemptions</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company generally expenses sales commissions when incurred because the amortization period is generally one year or less. These costs are recorded within sales and marketing expenses.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company does not assess whether a prepayment received represents a significant financing component as the period between when the payment is received and the transfer of the products to the customer is generally one year or less.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected duration of one year or less.</span></div></ix:continuation><div><a id="sfa72314be1054a4f961e51a9f50e6554"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LesseeOperatingLeasesTextBlock" id="TextSelection-C13D558467784F25EE87ECA9D25B9827-0-wk-Fact-620CBB63F25CF630D2ACECAC1029F251" continuedAt="TextSelection-C13D558467784F25EE87ECA9D25B9827-1" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">4.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Leases</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company's leasing arrangements primarily consist of operating leases for its facilities which include corporate, sales and marketing and research and development offices. For leases with terms greater than 12 months, the Company records the related right-of-use asset and lease obligation at the present value of lease payments over the term. The Company's leases typically include rental escalation clauses, renewal options and/or termination options that are factored into the determination of lease payments when appropriate. The Company does not separate lease and nonlease components of contracts and excludes all variable lease payments from the measurement of right-of-use assets and lease liabilities. The Company's variable lease payments generally include usage based nonlease components. The Company's lease agreements do not contain any residual </span></div></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">55</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-C13D558467784F25EE87ECA9D25B9827-1"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">value guarantees or restrictive covenants. Leases with an initial term of 12 months or less are not recorded on the balance sheet. Lease expense is recognized on a straight-line basis over the lease term.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company's existing leases do not provide a readily determinable implicit rate. Therefore, the Company estimates its incremental borrowing rate to discount the lease payments based on information available at December 30, 2018 (date of initial application) or the lease commencement date for new leases post adoption. At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company's weighted average discount rate was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e640-wk-Fact-942183E4AE68EA9963B430673726ED83" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" contextRef="FI2019Q4" unitRef="number" decimals="4" scale="-2" format="ixt:numdotdecimal">3.61</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">, while the weighted average remaining lease term was </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27594788e644-wk-Fact-FD974B5EF8700729EFCF30680BD3CE80" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" contextRef="FI2019Q4" format="ixt-sec:duryear">9.21</ix:nonNumeric> years</span></span><span style="font-family:inherit;font-size:10pt;">. </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LeaseCostTableTextBlock" id="TextSelection-6401DBDA2BB30ACCC6AA3079D4ACB13D-0-wk-Fact-FC844E9B45B617C6D64D307A2F8230D2" escape="true"><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of lease expense were as follows (in thousands):</span></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="4"></td></tr><tr><td style="width:79%;"></td><td style="width:1%;"></td><td style="width:19%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e698-wk-Fact-CC19AF94AA1DFBC82A163068BB012AEA" name="us-gaap:OperatingLeaseCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,777</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Variable lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e713-wk-Fact-731DDA464DB370465D7A3068FB9AFC63" name="us-gaap:VariableLeaseCost" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,096</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e738-wk-Fact-8940144530DE6633E27930715EA68978" name="us-gaap:OperatingLeasesRentExpenseNet" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,873</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Rental expense under operating leases for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;"> amounted to </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594788e757-wk-Fact-171C5B22BCB1B9F28C833072275BDD25" name="us-gaap:OperatingLeasesRentExpenseNet" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">12.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27594788e761-wk-Fact-A238C9CA841FD7322ABA30725CAA1692" name="us-gaap:OperatingLeasesRentExpenseNet" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">8.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="irbt:ScheduleofLeasesSupplementalCashFlowTableTextBlock" id="TextSelection-B56B8935F046B3F3B6F4355553F50317-0-wk-Fact-B5248132447EA534431D3556A92783FB" escape="true"><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental cash flow information related to leases was as follows (in thousands):</span></div><div style="line-height:120%;text-align:center;padding-left: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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:79%;"></td><td style="width:1%;"></td><td style="width:19%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">Cash paid for amounts included in the measurement of lease liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating cash flows from operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e839-wk-Fact-1F331369BB737ADD0BEE2113EC866B52" name="us-gaap:OperatingLeasePayments" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,540</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Right-of-use assets obtained in exchange for lease obligations:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e880-wk-Fact-4E92704AE0CD94E0353F212387360A9A" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53,227</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="TextSelection-30D028A5E1F14C8E2064307635EFE8BB-0-wk-Fact-0AF4E5BF300AEE7E36523077E6BEBF10" escape="true"><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Maturities of operating lease liabilities were as follows as of&#160;December&#160;28, 2019&#160;(in thousands):</span></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="4"></td></tr><tr><td style="width:79%;"></td><td style="width:1%;"></td><td style="width:19%;"></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;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">2020</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e941-wk-Fact-7CBCA8A8B92F3D0333F4212CEA7C1DD6" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,936</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2021</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e956-wk-Fact-62B73D8FA4954FCDA9EB212D76A07E42" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,263</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2022</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e976-wk-Fact-2AE098E546DBAEA8B847212DDE3565AA" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,592</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2023</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e996-wk-Fact-34E87B66BB132A6B3B04212E85DA92CF" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,145</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2024</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e1016-wk-Fact-8D020B0385B25ABE6A54212EEB59E12E" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,308</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Thereafter</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e1036-wk-Fact-112A609F6E08B442CBE6212F5B654848" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">34,957</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total minimum lease payments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e1061-wk-Fact-AEFA35E1417CCDE18477212FD3FC35AA" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">73,201</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: imputed interest</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e1076-wk-Fact-7B0B4633F06654A3F9B621304F147F23" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,430</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Present value of future minimum lease payments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e1101-wk-Fact-86DBDF7B5B90D9B7D8482130A8DC2AF9" name="us-gaap:OperatingLeaseLiability" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">61,771</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: current portion of operating lease liabilities (Note 9)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e1116-wk-Fact-777D01E669777DD30E1A213142E972C9" name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,843</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Long-term lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27594788e1142-wk-Fact-2350D621F8FAC0CB0FFAED15D3C0F08B" name="us-gaap:OperatingLeaseLiabilityNoncurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">54,928</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:11pt;"><span style="font-family:inherit;font-size:11pt;font-style:italic;font-weight:bold;">Financial Statement Impact of Adopting ASC 842</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company adopted ASC 842 effective December 30, 2018 using the alternative transition method. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company elected the package of practical expedients permitted under the transition guidance, which allowed the Company to carryforward its historical assessments of (1) whether contracts are or contain leases, (2) lease classification and (3) initial direct costs. In addition, the Company elected the practical expedient to use hindsight in determining lease term. The adoption of the new standard resulted in the recognition of right-of-use assets and lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The standard did not materially impact the Company's consolidated income or cash flows.</span></div></ix:continuation><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sE8A076C11CC55A9F8F48850F0D5C25AF"></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">56</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="TextSelection-2EDB6AA3D16E703711441ECF8C44A3A1-0-wk-Fact-9AB79FD0FFF149E6F0F81ECF8C0FEB2C" continuedAt="TextSelection-2EDB6AA3D16E703711441ECF8C44A3A1-1" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">5.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Business Combinations</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Acquisition of Robopolis</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In October 2017, the Company closed the acquisition of its largest European distributor, Robopolis SAS, a French company ("Robopolis"). The acquisition will better enable the Company to maintain its leadership position and grow its business in several Western European countries through direct control of pre- and post-sales market activities including sales, marketing, branding, channel relationships and customer service. The purchase price was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27596604e639-wk-Fact-F17D83BEEF9C5E1910B41ECF8C10797D" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">169.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;in cash, net of acquired cash of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27596604e643-wk-Fact-260AA60A4D31CA7912E91ECF8C103C9E" name="us-gaap:CashAcquiredFromAcquisition" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">38.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. The acquisition was a stock purchase. The results of operations for this acquisition have been included in the Company&#8217;s operating results since the acquisition date.</span></div><ix:continuation id="TextSelection-3DCDD71987589C2258F81ECF8C447ABE-0"><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the final allocation of the purchase price (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:86%;"></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:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e679-wk-Fact-8E61CF9B877E74E7B1381ECF8BB50A9D" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">37,981</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e694-wk-Fact-BBA14B7D0211EC2DC6891ECF8BB1241E" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,426</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e714-wk-Fact-92FDCF5FCA5E5131A3921ECF8BB3CC02" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,304</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Goodwill</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e734-wk-Fact-93D90F1103A7705B71AB1ECF8BB2D976" name="us-gaap:Goodwill" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">80,419</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e754-wk-Fact-92555C7507135F7F9F6E1ECF8BB308D4" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,597</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e774-wk-Fact-E6F3B1E13439866E5C481ECF8BB07872" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,456</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e794-wk-Fact-9815A85C72495B2DC3C51ECF8BB3C445" name="irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">215,183</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accounts payable</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e835-wk-Fact-DCAF092160D747A6D06B1ECF8BB4C54A" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">29,391</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e856-wk-Fact-E0132CC78D6CF6D9D64B1ECF8BB1325E" name="irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,376</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e877-wk-Fact-45C8D3722AA0D24C96B61ECF8BAF8FBE" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,864</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e899-wk-Fact-C10EAB72ED029DBFE0801ECF8BB5A3C6" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,138</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total liabilities assumed</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e920-wk-Fact-EB79D74B77F1E3C5376E1ECF8BB18A45" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">45,769</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e946-wk-Fact-0424E0245D5144299EEE1ECF8BB1E348" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">169,414</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;text-align:center;text-indent:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;padding-left:84px;text-indent:-12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(1) The accounts receivable balance includes reserves for product returns, discounts and promotions assumed as part of the acquisition.</span></div><div style="line-height:120%;text-align:left;padding-left:84px;text-indent:-12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:continuation id="TextSelection-800B8456519A440969DC1ECF8C447B7B-0"><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"></td></tr><tr><td style="width:60%;"></td><td style="width:1%;"></td><td style="width:19%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:17%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Useful Life</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27596604e1036-wk-Fact-779649519F3BD57CC02B1ECF8C0A9545" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" format="ixt-sec:duryear">2.25</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1051-wk-Fact-EF8282B2B5924EE206401ECF8C0826E6" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">29,296</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27596604e1071-wk-Fact-910BF95595D9534DC08B1ECF8C0E9EEC" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" format="ixt-sec:duryear">14</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1081-wk-Fact-071D94635A9DE92779A61ECF8C0782EB" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,029</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Non-competition agreements</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27596604e1106-wk-Fact-48E89A4982C048F69CB71ECF8C15058F" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" format="ixt-sec:duryear">3</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1116-wk-Fact-AC6BAE89B731D2E3CFC61ECF8C07BE3C" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">272</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1156-wk-Fact-7C7459B07B42DEA233C61ECF8C0790F8" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">36,597</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;text-indent:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Acquisition of Sales On Demand Corporation</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In April&#160;2017, the Company closed its acquisition of the iRobot-related distribution business of Sales On Demand Corporation ("SODC") for </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27596604e1175-wk-Fact-9DF299E099ACC4EFEF343B17FE5C244B" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">16.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;in cash, equal to the book value of the acquired assets. &#160;The acquisition will better enable the Company to maintain its leadership position and accelerate the growth of its business in&#160;Japan&#160;through direct control of pre- and post-sales market activities including sales, marketing, branding, channel relationships and customer service. It also expands the Company's presence and customer outreach opportunities in&#160;Japan. The acquisition was a stock purchase. The results of operations for this acquisition have been included in the Company's operating results since the acquisition date. </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During 2017, the Company finalized the purchase price allocation and made measurement period adjustments to the provisional amounts reported as the estimated fair values of assets acquired. These measurement period adjustments resulted in a&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27596604e1182-wk-Fact-420EAA1CF6720CDC42173B1996809CCA" name="us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;non-taxable gain on business acquisition which represents the excess of the fair value of the net assets acquired over the purchase price. The gain on business acquisition was recorded within other income, net in the consolidated statements of income. The Company believes that the gain on business acquisition was due to the transaction not being subjected to a competitive bidding process and the purchase price being determined based on the net book value of the net assets acquired.</span></div></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">57</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-2EDB6AA3D16E703711441ECF8C44A3A1-1"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" id="TextSelection-395C16434F6236759C461ECF8C4419A6-0-wk-Fact-1E890AAB027675B322E61ECF8C126695" continuedAt="TextSelection-3DCDD71987589C2258F81ECF8C447ABE-0" escape="true"><div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-align:justify;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the final allocation of the purchase price (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:36px;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:94.7265625%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:88%;"></td><td style="width:1%;"></td><td style="width:10%;"></td><td style="width:1%;"></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1216-wk-Fact-6852AE266B5EB29667A11ECF8BB0EF45" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">125</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e1231-wk-Fact-B96F862450DDC510604E1ECF8BB02F34" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,496</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1252-wk-Fact-1A296A3AC0C3EEB967851ECF8BB291E6" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,290</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1272-wk-Fact-0615289844420B0121881ECF8BB431A4" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,065</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets, net</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1292-wk-Fact-00E223C0976C76F118201ECF8BB33E9B" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">409</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Goodwill</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1312-wk-Fact-F38E1E4B5CDD3721C4C11ECF8BB1728F" name="us-gaap:Goodwill" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1332-wk-Fact-D6AE8FDF646669D7B20B1ECF8BB09410" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,640</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1352-wk-Fact-70F52791C4F6B2A020C11ECF8BAF772C" name="irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">24,033</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses and other current liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e1393-wk-Fact-C2B9BFC110290B25D2DC1ECF8BB3FB9A" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,450</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e1414-wk-Fact-35B3627F946263123CEB1ECF8BB1C962" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">691</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total liabilities assumed</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e1436-wk-Fact-6540B06690365A96521A1ECF8BAE10C8" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,141</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1462-wk-Fact-6EDD58C62135B9A294C91ECF8BB23DAB" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">18,892</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gain on business acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27596604e1477-wk-Fact-C8C71B51583856C06FE41ECF8BAE06EB" name="us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,243</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total purchase price</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1503-wk-Fact-7EDA900C6976614A91631ECF8BB4F7CE" name="us-gaap:PaymentsToAcquireBusinessesGross" contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,649</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;text-indent:36px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(1) The accounts receivable balance reflects reserves for product returns, discounts and promotions assumed as part of the acquisition. </span></div></ix:nonNumeric><div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" id="TextSelection-7648B252919D76947BE31ECF8C442097-0-wk-Fact-19656F0DE2A8D75EE6BD1ECF8C0F35EA" continuedAt="TextSelection-800B8456519A440969DC1ECF8C447B7B-0" escape="true"><div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">     </span><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="7"></td></tr><tr><td style="width:55%;"></td><td style="width:1%;"></td><td style="width:22%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:19%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Useful Life</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27596604e1590-wk-Fact-59B8BD4C8ACAD47A9E131ECF8BBB9525" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" format="ixt-sec:duryear">13</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1605-wk-Fact-79F6292096449DC81B831ECF8BBB0111" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,490</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27596604e1625-wk-Fact-476126C1321F053185491ECF8BBA4331" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" format="ixt-sec:durmonth">9</ix:nonNumeric> months</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1635-wk-Fact-E8C125E191FD51EDDBAB1ECF8BBA9CA3" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,150</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1675-wk-Fact-A5A0B09028F76179FB7E1ECF8BBB1172" name="us-gaap:FinitelivedIntangibleAssetsAcquired1" contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,640</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:BusinessAcquisitionProFormaInformationTextBlock" id="TextSelection-21EE71B9EA80A1A7A4CB1ECF8C444634-0-wk-Fact-2823B676CBB1F20E228B1ECF8C11E230" escape="true"><div style="line-height:120%;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Pro Forma Results (Unaudited)</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows unaudited pro forma results of operations as if the Company had acquired Robopolis on January&#160;1, 2017 (in thousands, except per share amounts):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:81%;"></td><td style="width:1%;"></td><td style="width:17%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1761-wk-Fact-A27EA334E48FF2ECC09A1ECF8BBE606C" name="us-gaap:BusinessAcquisitionsProFormaRevenue" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">901,612</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1776-wk-Fact-DDAA958B51DF671AB7831ECF8BBD5DD0" name="us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">51,887</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income per share:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Basic income per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1822-wk-Fact-8BA27DC9D04ECDAAE0FD1ECF8BBC53AB" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.88</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted income per share</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27596604e1842-wk-Fact-822599122EFA478856E61ECF8BBE66F8" name="us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.80</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has not furnished pro forma financial information relating to its acquisition of SODC in 2017 and an immaterial acquisition during the fiscal year 2019, because such information is not material, individually or in the aggregate, to its financial results. The unaudited pro forma results of operations are not necessarily indicative of the actual results that would have occurred had the transactions taken place at the beginning of the periods indicated.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">58</span></div></div><hr style="page-break-after:always"></hr><div><a id="s3EC3568FF5AE5D2ABAC8CD40B23FD0F3"></a></div><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:InventoryDisclosureTextBlock" id="TextSelection-2E4EBF321BBAF6072D311ECF8C4467C2-0-wk-Fact-CB202956A15A8E7DCD4F1ECF8BE51383" escape="true"><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="2"></td></tr><tr><td style="width:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">6.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Inventory</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="TextSelection-FA7BE3A01662FFD806B41ECF8C442599-0-wk-Fact-0030DD1B2B261C1A69E21ECF8BE5F597" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory consists of the following (in thousands):</span></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="8"></td></tr><tr><td style="width:73%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Raw materials</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27595090e713-wk-Fact-0D3F44D2BF53B9824CB41ECF8BA83B9D" name="us-gaap:InventoryRawMaterialsNetOfReserves" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,825</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27595090e732-wk-Fact-15F7449814CD84DE25761ECF8BAA6C7F" name="us-gaap:InventoryRawMaterialsNetOfReserves" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,992</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Finished goods</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27595090e747-wk-Fact-3CDBDDE6B96A817222331ECF8BA60249" name="us-gaap:InventoryFinishedGoodsNetOfReserves" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">154,522</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27595090e766-wk-Fact-126CC233F278BF86DC311ECF8BA85E2F" name="us-gaap:InventoryFinishedGoodsNetOfReserves" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">161,641</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27595090e791-wk-Fact-DE1D48EE84D86AB353271ECF8BFEFE61" name="us-gaap:InventoryNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">157,347</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27595090e810-wk-Fact-5188E3C98202E8F83A161ECF8C028A0C" name="us-gaap:InventoryNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">164,633</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:nonNumeric><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div><div><a id="s811BD97C5D87524CA0149AF0F1025219"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" id="TextSelection-D706D4F138A7DD1837201ECF8C45BC36-0-wk-Fact-56156F4E14F231D898561ECF8C14FE6B" escape="true"><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="2"></td></tr><tr><td style="width:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">7.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Property and Equipment</span></div></td></tr></table></div></div><ix:continuation id="TextSelection-0505DFA0A2411FA9553C1ECF8C45D94F-0"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment consists of the following (in thousands):</span></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="8"></td></tr><tr><td style="width:73%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e714-wk-Fact-5D91B833D373CD18C8661ECF8BBF07A7" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,588</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e733-wk-Fact-1C13065E671C7F7910E21ECF8BC1B0EC" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,339</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e748-wk-Fact-56AB5359D7E2515D52091ECF8BC6D24F" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,494</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e767-wk-Fact-88E65991CC7FF6BD28E31ECF8BC44625" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,231</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e787-wk-Fact-FAFBDE9CCED9CBF78F401ECF8BC7B8F5" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">79,213</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e806-wk-Fact-B19DE61864C8095F90A61ECF8BC6DA37" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">60,281</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e826-wk-Fact-0D4E0BD840D144E57FBA1ECF8BC3814C" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">39,538</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e845-wk-Fact-DABE3F4C4EAD774C26791ECF8BC4C608" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">28,701</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e865-wk-Fact-3888163538099D6F63E81ECF8BC85774" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,933</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e884-wk-Fact-97BAFEBB01FAC10288D61ECF8BC197AA" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,638</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Subtotal</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e904-wk-Fact-9B301E2FC9A34AF337361ECF8BBF6D71" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">156,766</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e923-wk-Fact-6149C8C7B8B5E5BEA9531ECF8BC5B8C3" name="us-gaap:PropertyPlantAndEquipmentGross" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">122,190</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: accumulated depreciation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e943-wk-Fact-9B0DFE8769271CAC5D581ECF8BC5A047" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">80,778</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e962-wk-Fact-B1818451AE0BC3AF16D41ECF8BC70C35" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">65,164</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e987-wk-Fact-C4252AD0714C3631DD521ECF8BF900C4" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">75,988</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602078e1006-wk-Fact-7A67558A4703169135D01ECF8B91E4C0" name="us-gaap:PropertyPlantAndEquipmentNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">57,026</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the net book value of capitalized internal-use software costs was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602078e1034-wk-Fact-04BA311D34360AA5F9621ECF8C135A69" name="us-gaap:CapitalizedComputerSoftwareNet" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">6.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602078e1038-wk-Fact-13A17F0EC3155F99FE091ECF8C13BDDF" name="us-gaap:CapitalizedComputerSoftwareNet" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">4.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, which are included within business applications software.  </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Depreciation expense for the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602078e1057-wk-Fact-7B19E8708EDEB354A62F1ECF8C11526D" name="us-gaap:Depreciation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">24.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;"><span>$<ix:nonFraction id="d27602078e1061-wk-Fact-59E9A2076DCE00F8BCC61ECF8C11E056" name="us-gaap:Depreciation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">17.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;"><span>$<ix:nonFraction id="d27602078e1066-wk-Fact-AF72A4CFEED2BB5DCE3B1ECF8C15F19A" name="us-gaap:Depreciation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">12.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, which included amortization expense of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602078e1070-wk-Fact-4DA7F1833C81F062F8F51ECF8C148771" name="us-gaap:CapitalizedComputerSoftwareAmortization1" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602078e1074-wk-Fact-7A7B2384A7F78C4216241ECF8C13BB42" name="us-gaap:CapitalizedComputerSoftwareAmortization1" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602078e1078-wk-Fact-050BFED09DD1B23DC5051ECF8C11565C" name="us-gaap:CapitalizedComputerSoftwareAmortization1" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, for capitalized internal-use software.</span></div></ix:nonNumeric><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s2A750D26FC995E358ADC73B6E74921CE"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" id="TextSelection-FDA64AB9194C5847CD3C1ECF8C45E557-0-wk-Fact-CECD2E9A875A01F60E651ECF8BD1CF37" continuedAt="TextSelection-FDA64AB9194C5847CD3C1ECF8C45E557-1" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">8.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Goodwill and other intangible assets</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfGoodwillTextBlock" id="TextSelection-3BA7E0419FF4257E4C391ECF8C451B9B-0-wk-Fact-7EA7099779D8AD114C9B1ECF8BD17EBA" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the activity in the carrying amount of goodwill for fiscal years 2019 and 2018 (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"></td></tr><tr><td style="width:78%;"></td><td style="width:1%;"></td><td style="width:20%;"></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e663-wk-Fact-26D7F10178A4A0B4D4BA1ECF8C0CF4DC" name="us-gaap:Goodwill" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">121,440</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Purchase accounting adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e678-wk-Fact-ACDA112B0847BAB4ACE21ECF8C0C63EC" name="us-gaap:GoodwillPurchaseAccountingAdjustments" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">830</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Effect of foreign currency translation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27601433e698-wk-Fact-A25F31C92425AD08C3A01ECF8C0EAE37" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">3,374</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e719-wk-Fact-F7507234ED785F93176A1ECF8B9EA43E" name="us-gaap:Goodwill" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">118,896</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e739-wk-Fact-EB47FA12E3E5C3BC22331ECF8C0BEFD8" name="us-gaap:GoodwillAcquiredDuringPeriod" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,050</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Effect of foreign currency translation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27601433e759-wk-Fact-C4E89A2B0547DF9DF7191ECF8C0D11D2" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,214</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e785-wk-Fact-FA888AE4A5D8E20382961ECF8BA4F872" name="us-gaap:Goodwill" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">118,732</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">59</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-FDA64AB9194C5847CD3C1ECF8C45E557-1"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="TextSelection-FF748412FD8CA1F410A01ECF8C45DBFE-0-wk-Fact-BFAB33F1E1AC288A982A1ECF8BD0A8D6" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets consisted of the following (in thousands):</span></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="24"></td></tr><tr><td style="width:39%;"></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:7%;"></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:7%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Accumulated</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Accumulated</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Net</span></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;"><span style="font-family:inherit;font-size:10pt;">Completed technology</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1105-wk-Fact-61443F51FA409546E4871ECF8BDA68BD" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">28,100</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1124-wk-Fact-E1B71CD6C7FB89F14BCC1ECF8BDDC6F0" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">24,605</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1143-wk-Fact-3B676FA91E6171DF398E1ECF8BE12655" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,495</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1163-wk-Fact-4AA71A9B12183C7EC56F1ECF8BDE35F9" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">26,900</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1182-wk-Fact-99A3AC39F57F96025AEB1ECF8BE09EFB" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,607</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1202-wk-Fact-BB81FD11139D3F45EAFA1ECF8BDFE84B" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,293</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tradename</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1217-wk-Fact-2821F855E6C4D037B7401ECF8BE391FE" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">100</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1236-wk-Fact-76A7AA83D96463C635021ECF8BDB71E5" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">100</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1255-wk-Fact-F5392C4EF2079BF684C31ECF8BE11083" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1275-wk-Fact-89B73162E20E4EDA756F1ECF8BD93C0E" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">100</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1294-wk-Fact-A1E51145516644B9620E1ECF8BE20E64" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">100</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1313-wk-Fact-9A91C421AD4FCE58FE6B1ECF8BDFF8DD" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1334-wk-Fact-9B105A2D326C8DBF2F2F1ECF8BE1CBFC" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,095</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1353-wk-Fact-8E9202DBC8134B953F791ECF8BDA52D8" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,302</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1372-wk-Fact-DFB29E33D6E79C3A73E71ECF8BDEB5F2" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,793</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1392-wk-Fact-9BBA6E360C813DFF897D1ECF8BDBDBC6" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,291</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1411-wk-Fact-081215BEC2770791A9191ECF8BE27401" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,365</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1430-wk-Fact-A376D59595625C91B32C1ECF8BE030B9" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,926</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1451-wk-Fact-4734BE4BCA73A52225F21ECF8BE00EA4" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,680</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1470-wk-Fact-118F63825C509D4B388B1ECF8BDC321E" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,680</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1489-wk-Fact-40463703D0A4C845A8AA1ECF8BDFE058" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1509-wk-Fact-FC91368E3D7FFF5EBCF31ECF8BE37308" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,499</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1528-wk-Fact-D47FE4269FBDB4C6A5311ECF8BDDB520" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,598</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1547-wk-Fact-8B2EA5542DA6590D63581ECF8BDC4AC1" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,901</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Non-competition agreements</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1568-wk-Fact-523674AE37AB7325FAE21ECF8BE04841" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">256</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1587-wk-Fact-B2A8E8BE4EFECF1DC2D31ECF8BDDBC3E" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">192</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1606-wk-Fact-1EC8C9CC2D8D264977F71ECF8BE289F9" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">64</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1626-wk-Fact-F76D678A81CF297CE81B1ECF8BDB7E0F" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">263</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1645-wk-Fact-7254718773BD2F089C561ECF8BE0DB7A" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">110</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1664-wk-Fact-B124F547C7418FB1190F1ECF8BE3774A" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">153</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1690-wk-Fact-14EEB9AE6022CC2D5F671ECF8BE3E3C1" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">71,231</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1709-wk-Fact-4202244B55640B7D48A01ECF8BE216FA" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">58,879</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1728-wk-Fact-7286D37E27ACA16012C01ECF8BA58474" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,352</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1748-wk-Fact-2FA1C02883D41537481F1ECF8BE32749" name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">71,053</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1767-wk-Fact-EBBF719A7F495C0436151ECF8BDAD6BD" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">46,780</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1787-wk-Fact-CD47058F31B7D9B4302E1ECF8C026833" name="us-gaap:FiniteLivedIntangibleAssetsNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">24,273</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization expense related to acquired intangible assets was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27601433e1806-wk-Fact-44996C50CCC58157291A1ECF8BCFEC1B" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">12.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27601433e1810-wk-Fact-FB18B010D99D5111FF391ECF8BCFE141" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">19.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27601433e1814-wk-Fact-F9D15E461F3E63287BA01ECF8BCFE31F" name="us-gaap:AmortizationOfIntangibleAssets" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">13.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> for the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, respectively.  </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="TextSelection-E6C16F6AAC8702A2316A1ECF8C4540B7-0-wk-Fact-5D3F43A0B8E68995F6BD1ECF8BD02DF4" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The estimated future amortization expense related to current intangible assets in each of the five succeeding fiscal years is expected to be as follows (in thousands):</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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.61013645224172%;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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Operating Expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">2020</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1941-wk-Fact-53DB321CF3CCA1EC2CD31ECF8C0BA0F7" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,140</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1960-wk-Fact-BCF548B329FC29B4994E1ECF8C0807F6" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1979-wk-Fact-614BFA937959EE7FD2A31ECF8C0A86D8" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,140</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2021</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e1995-wk-Fact-E2917F3B218B1BC9AA571ECF8C062CED" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,140</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2014-wk-Fact-B4DE1AD0B37C1CF1F5201ECF8C092BA8" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">781</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2033-wk-Fact-B39F3322DC6FBE4842761ECF8C053CA9" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,921</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2022</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2054-wk-Fact-400A07BE7D3FBCC3E4731ECF8C0411B9" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">915</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2073-wk-Fact-14EFA72C701B25255C3F1ECF8C04D960" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">781</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2092-wk-Fact-574297EE9266AB4C40A31ECF8C099A1D" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,696</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2023</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2113-wk-Fact-62BCEE5BE799A915A7EA1ECF8C08A98E" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">240</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2132-wk-Fact-4F71CC98F1764DE42A861ECF8C0AB16A" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">781</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2151-wk-Fact-98EF71627CEA0D6B3AFB1ECF8C0DBC05" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,021</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2024</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2172-wk-Fact-8D36E25709B6A1B022091ECF8C0CFF6E" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">60</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2191-wk-Fact-FB804F7B6F69AD2D78DA1ECF8C04367D" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">781</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2210-wk-Fact-36678497D18011794E3E1ECF8C07B6EF" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">841</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Thereafter</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2231-wk-Fact-F37B4414535C8CA0C71B1ECF8C080239" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2250-wk-Fact-11D253F439F804E534D01ECF8C0B716E" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,733</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2269-wk-Fact-E5251166ABF69A9F95461ECF8C05D504" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,733</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2295-wk-Fact-AB9288CAEE5C525329E31ECF8C06EA87" name="irbt:Finitelivedintangibleassetsfutureamortizationtotal" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,495</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2314-wk-Fact-0F932B1632C21D8359FD1ECF8C033218" name="irbt:Finitelivedintangibleassetsfutureamortizationtotal" contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,857</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27601433e2333-wk-Fact-5752C2B7B7CD40C678D61ECF8C0A6341" name="irbt:Finitelivedintangibleassetsfutureamortizationtotal" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,352</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:continuation><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">60</span></div></div><hr style="page-break-after:always"></hr><div><a id="s7BFC4314D36751EA8A50187BE366FE8D"></a></div><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="TextSelection-889ED2BC9AFF79CB48471ECF8C45DCBC-0-wk-Fact-B9780F32D31918D891A51ECF8BB5050E" escape="true"><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="2"></td></tr><tr><td style="width:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">9.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Accrued Expenses</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" id="TextSelection-E05632CCE013AC8FB9721ECF8C456A43-0-wk-Fact-E8DEF2F10E69AF6D7A951ECF8BB6F357" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses consist of the following (in thousands):</span></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="8"></td></tr><tr><td style="width:73%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued warranty</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e714-wk-Fact-0C1F254FC55170E787991ECF8BF1512A" name="us-gaap:StandardProductWarrantyAccrualCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,856</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e733-wk-Fact-30516DCBE7068CBC20C61ECF8BF02EA5" name="us-gaap:StandardProductWarrantyAccrualCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued other compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e748-wk-Fact-D0BEA4E5B1B0EE7F10C61ECF8BF06A67" name="us-gaap:OtherEmployeeRelatedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,331</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e767-wk-Fact-4C02939E4B2300A6953B1ECF8BEFFEB8" name="us-gaap:OtherEmployeeRelatedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,518</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued bonus</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e787-wk-Fact-265F4001930B1C8E1C301ECF8BF187BE" name="us-gaap:AccruedBonusesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,541</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e806-wk-Fact-71976771C1F69C788E7B1ECF8BF0A429" name="us-gaap:AccruedBonusesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,226</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued sales and other indirect taxes payable</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e826-wk-Fact-35F2A91E69E5579EDD9A1ECF8BF224D2" name="irbt:AccruedSalesTax" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,440</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e845-wk-Fact-47AA849179FAFDFB291F1ECF8BF2CCBA" name="irbt:AccruedSalesTax" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,397</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued direct fulfillment costs</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e865-wk-Fact-4FB22791712A3AF9D6571ECF8BF2B868" name="irbt:AccruedDirectFulfillmentCosts" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,582</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e884-wk-Fact-64BFB237FC395470DB7C1ECF8BF0A1E4" name="irbt:AccruedDirectFulfillmentCosts" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,372</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Current portion of operating lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e904-wk-Fact-777D01E669777DD30E1A213142E972C9" name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,843</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e923-wk-Fact-1F72C994E9E140E433121ECF8B92A769" name="us-gaap:OperatingLeaseLiabilityCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued federal and state income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e943-wk-Fact-B7478715B71BA377A9E01ECF8BF1611B" name="us-gaap:AccruedIncomeTaxesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,378</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e962-wk-Fact-799999B53A63AF01E0F61ECF8BF20A04" name="us-gaap:AccruedIncomeTaxesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,936</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e982-wk-Fact-E8F919840CFDAFAF08431ECF8BF2A180" name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,797</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e1001-wk-Fact-9AED5ADDE612436497741ECF8BF1122F" name="us-gaap:OtherAccruedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,846</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e1026-wk-Fact-85F0823588BFA4812E1E1ECF8BFA5AE4" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">81,768</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602660e1045-wk-Fact-CB9C1BD46E27F5E075C51ECF8B919BB7" name="us-gaap:AccruedLiabilitiesCurrent" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">71,259</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:nonNumeric><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;"><br/></span></div><div><a id="sE69049E819E7584C80552C8E27B4B6BA"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DebtDisclosureTextBlock" id="TextSelection-BDBD5337DFA682AF306A1ECF8C455A71-0-wk-Fact-BAF09CDFEDA5F31B5FD71ECF8C1BD6D8" continuedAt="TextSelection-BDBD5337DFA682AF306A1ECF8C455A71-1" escape="true"><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="2"></td></tr><tr><td style="width:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">10.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Working Capital Facility</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Credit Facility</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2018, the Company entered into an agreement with Bank of America, N.A., increasing the amount of its unsecured revolving line of credit from&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602062e638-wk-Fact-0F7CC3F0BB00F3D93BF61ECF8C1002BE" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="FI2017Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">75.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;to&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602062e642-wk-Fact-F62FD637F8384EF5A6531ECF8C11CB6C" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">150.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and extending the term of the credit facility to June 2023. As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company had no outstanding borrowings under the revolving credit facility. The revolving line of credit is available to fund working capital and other corporate purposes. The interest on loans under the credit facility accrues, at the Company's election, at either (1) LIBOR plus a margin, currently equal to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602062e650-wk-Fact-5B40AE6B19EC4F6AD7B81ECF8C159753" name="irbt:InterestRateAboveLIBORUnderConditionOne" contextRef="FI2019Q4" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">1.0</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">, based on the Company's ratio of indebtedness to Adjusted EBITDA (the "Eurodollar Rate"), or (2) the lender&#8217;s base rate. The lender&#8217;s base rate is equal to the highest of (1) the federal funds rate plus&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602062e654-wk-Fact-FD19E0C1352C3C44A9031ECF8C12D6CB" name="irbt:InterestRateAbovetheFederalFundRateUnderConditionTwo" contextRef="FI2019Q4" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">0.5</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">, (2) the lender&#8217;s prime rate or (3) the Eurodollar Rate plus&#160;</span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602062e659-wk-Fact-89D9476EC237EB230D491ECF8C111E48" name="irbt:InterestRateAbovetheEurodollarRateUnderConditionTwo" contextRef="FI2019Q4" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">1.0</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">. In the event that LIBOR is discontinued as expected in 2021, the Company expects the interest rates for the debt following such event will be based on either alternate base rates or agreed upon replacement rates. While the Company does not expect a LIBOR discontinuation to affect its ability to borrow or maintain already outstanding borrowings, it could result in higher interest rates. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The credit facility contains customary terms and conditions for credit facilities of this type, including restrictions on the Company's ability to incur or guarantee additional indebtedness, create liens, enter into transactions with affiliates, make loans or investments, sell assets, pay dividends or make distributions on, or repurchase, the Company's stock, and consolidate or merge with other entities. In addition, the Company is required to meet certain financial covenants customary with this type of agreement, including maintaining a maximum ratio of indebtedness to Adjusted EBITDA and a minimum specified interest coverage ratio.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The credit facility contains customary events of default, including for payment defaults, breaches of representations, breaches of affirmative or negative covenants, cross defaults to other material indebtedness, bankruptcy and failure to discharge certain judgments. If a default occurs and is not cured within any applicable cure period or is not waived, the Company's obligations under the credit facility may be accelerated.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company was in compliance with all covenants under the revolving credit facility.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Lines of Credit</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has an unsecured letter of credit facility with Bank of America, N.A., available to fund letters of credit up to an aggregate outstanding amount of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602062e682-wk-Fact-046965E13EB02443310D307FF1C1ACD0" name="irbt:Letterofcreditfacilitymaximumborrowing" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">5.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. As of December 28, 2019, the Company had letters of credit outstanding of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27602062e686-wk-Fact-11C1A37C6F9C7899BE3630807D8A65AD" name="us-gaap:LettersOfCreditOutstandingAmount" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">0.5</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> under the letter of credit facility.&#160; </span></div></ix:nonNumeric><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><ix:continuation id="TextSelection-BDBD5337DFA682AF306A1ECF8C455A71-1" continuedAt="TextSelection-BDBD5337DFA682AF306A1ECF8C455A71-2"><span style="font-family:inherit;font-size:10pt;">The Company has an unsecured guarantee line of credit with Mizuho, Bank Ltd., available to fund import tax payments up to an aggregate outstanding amount of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27602062e693-wk-Fact-30C9AE12D79DD6EA366B3086C87872B4" name="irbt:Lineofcreditmaximumamount" contextRef="FI2019Q4" unitRef="jpy" decimals="-5" scale="6" format="ixt:numdotdecimal">220.0</ix:nonFraction> million</span></span></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-BDBD5337DFA682AF306A1ECF8C455A71-2"> Japanese Yen. As of December 28, 2019, the Company had no outstanding balance under the guarantee line of credit.</ix:continuation>&#160; </span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">61</span></div></div><hr style="page-break-after:always"></hr><div><a id="s7AF8D820CEA45560A9F6419B3D1843B5"></a></div><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" id="TextSelection-FD44A68352E11C63AC901ECF8C46686D-0-wk-Fact-BC9B1A5DBB29B28B33D41ECF8BE7D010" continuedAt="TextSelection-FD44A68352E11C63AC901ECF8C46686D-1" escape="true"><div style="line-height:120%;text-align:left;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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">11.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivative Instruments and Hedging Activities</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company operates internationally and, in the normal course of business, is exposed to fluctuations in foreign currency exchange rates.&#160;The foreign currency exposures typically arise from transactions denominated in currencies other than the functional currency of the Company's operations, primarily the British Pound, Canadian Dollar, Euro and Japanese Yen. The Company uses derivative instruments that are designated in cash flow hedge relationships to reduce or eliminate the effects of foreign exchange rate change on sales. These contracts typically have maturities of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27604789e635-wk-Fact-E30ED21F4356323EE86D2CB4EDD67634" name="us-gaap:DerivativeTermOfContract" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" format="ixt-sec:durwordsen">thirty-seven months</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> or less. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company had outstanding cash flow hedges with a total notional value of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27604789e647-wk-Fact-648A10A1B207B8092EDC1ECF8BE74FAE" name="us-gaap:DerivativeNotionalAmount" contextRef="FI2019Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">424.6</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27604789e651-wk-Fact-C928892442FEAF2C550B1ECF8BE61EE7" name="us-gaap:DerivativeNotionalAmount" contextRef="FI2018Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">366.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. </span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company also enters into economic hedges that are not designated as hedges from an accounting standpoint to reduce or eliminate the effects of foreign exchange rate changes typically related to short term trade receivables and payables. These contracts typically have maturities of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27604789e658-wk-Fact-BF136EF7E3F495ECA62F2CB310C6A866" name="us-gaap:DerivativeTermOfContract" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" format="ixt-sec:durwordsen">ten months</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> or less.  At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company had outstanding economic hedges with a total notional value of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27604789e670-wk-Fact-FB74171CBB8E553686B71ECF8BE5FD07" name="us-gaap:DerivativeNotionalAmount" contextRef="FI2019Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">58.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27604789e674-wk-Fact-3A92BD76927B557676581ECF8BE68D62" name="us-gaap:DerivativeNotionalAmount" contextRef="FI2018Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">56.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" id="TextSelection-0045672CD2FAE38BEF511ECF8C467897-0-wk-Fact-5A58211F7D7A8E9AC9661ECF8BE6E475" escape="true"><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The fair values of derivative instruments are as follows (in thousands):</span></div><div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"></td></tr><tr><td style="width:50%;"></td><td style="width:22%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></div></td></tr><tr><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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivatives not designated as hedging instruments:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other current assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e877-wk-Fact-A1A03FADF53AB70757DC1ECF8BD8600E" name="us-gaap:DerivativeAssets" contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,855</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e896-wk-Fact-7BC4AFE74308A947FE671ECF8BD88A2D" name="us-gaap:DerivativeAssets" contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">551</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e921-wk-Fact-C7E9F4E0925E02D860691ECF8BD571DA" name="us-gaap:DerivativeLiabilities" contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">297</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e940-wk-Fact-6F300CCE84C97249DDD61ECF8BD4F7F6" name="us-gaap:DerivativeLiabilities" contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivatives designated as cash flow hedges:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Other current assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1026-wk-Fact-591834EDB1115F2A932F1ECF8BD7A8C4" name="us-gaap:DerivativeAssets" contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,347</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1045-wk-Fact-2F70ECD3AF0AEC0F76BA1ECF8BD48D6E" name="us-gaap:DerivativeAssets" contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">53</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1070-wk-Fact-372C0B0FB873AB4539511ECF8BD6D0A0" name="us-gaap:DerivativeAssets" contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,112</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1089-wk-Fact-4461671E4669312DA2FA1ECF8BD7876B" name="us-gaap:DerivativeAssets" contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">172</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1119-wk-Fact-DB64315D402AA5BCEB9E1ECF8BD7D37A" name="us-gaap:DerivativeLiabilities" contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">47</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1138-wk-Fact-9616340391DC85218B3C1ECF8BD6E644" name="us-gaap:DerivativeLiabilities" contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">335</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Long-term liabilities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1168-wk-Fact-29657E0DC65E9543348A1ECF8BD563EA" name="us-gaap:DerivativeLiabilities" contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">414</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1187-wk-Fact-E871B82B1CCE649188D91ECF8BD5DCCD" name="us-gaap:DerivativeLiabilities" contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">795</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" id="TextSelection-55969595169594389D791ECF8C46B232-0-wk-Fact-1B401F06EA8E25AFDF2E1ECF8BE86601" continuedAt="TextSelection-55969595169594389D791ECF8C46B232-1" escape="true"><div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Gains (losses) associated with derivative instruments not designated as hedging instruments are as follows (in thousands):</span></div><div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"></td></tr><tr><td style="width:51%;"></td><td style="width:22%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal year ended</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Gain (loss) recognized in income</span></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:center;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Other income, net</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;"><span><ix:nonFraction id="d27604789e1353-wk-Fact-67B504D5883CE4A3F8BF1ECF8BFD9C59" name="us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet" contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">89</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;"><span><ix:nonFraction id="d27604789e1372-wk-Fact-D91C4B3D1C8CC8A472C71ECF8BFA1764" name="us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet" contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,568</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:justify;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following tables reflect the effect of derivatives designated as cash flow hedging for the years ended&#160;(in thousands):&#160;</span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"></td></tr><tr><td style="width:71%;"></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="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Gain (loss) recognized in OCI on Derivative (1)</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal year ended</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Foreign currency forward contracts</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1599-wk-Fact-B573B82C7CECC8E047601ECF8BCC7087" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" contextRef="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">16,483</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27604789e1618-wk-Fact-18E2B28755E7276C92091ECF8BCB7247" name="us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" contextRef="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">686</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr></table></div></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:88px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:64px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The amount represents the change in fair value of derivative contracts due to changes in spot rates.</span></div></td></tr></table></ix:nonNumeric></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">62</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-55969595169594389D791ECF8C46B232-1"><ix:continuation id="TextSelection-FD44A68352E11C63AC901ECF8C46686D-1"><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"></td></tr><tr><td style="width:44%;"></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><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="15" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Gain (loss) recognized in earnings on cash flow hedging instruments</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of revenue</span></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;"><span style="font-family:inherit;font-size:9pt;">Consolidated statements of income in which the effects of cash flow hedging instruments are recorded</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1938-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49" name="us-gaap:Revenues" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,214,010</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1957-wk-Fact-AF9B97F370BB84E713061ECF8C1946E9" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">670,083</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1977-wk-Fact-989EE34444750D4496461ECF8BCC77EC" name="us-gaap:Revenues" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,092,584</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e1996-wk-Fact-80E2006CF272FF94BA131ECF8BC478A6" name="us-gaap:CostOfGoodsAndServicesSold" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">537,156</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;">Gain or (loss) on cash flow hedging relationships:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;">Foreign currency forward contracts:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">Amount of gain (loss) reclassified from AOCI into earnings</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e2282-wk-Fact-E97B2CF9198AFEB123773A00F6BA6D84" name="us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" contextRef="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,889</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e2301-wk-Fact-3D90AEDD2D593160981C3A00F6B287E7" name="us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" contextRef="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27604789e2321-wk-Fact-CDA42724A3958B5EC9CA3A00F691F713" name="us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" contextRef="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">948</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27604789e2340-wk-Fact-E392E4D983F4F36BF2083A00F6AA5651" name="us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" contextRef="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">386</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation></ix:continuation><div style="line-height:120%;padding-top:4px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s6D53A36639E65513A2D5B8706C965832"></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:FairValueDisclosuresTextBlock" id="TextSelection-8E830C1471930F10EDD51ECF8C46FC7F-0-wk-Fact-29BE30BDD6DDEE45A6EA1ECF8BED83C4" continuedAt="TextSelection-8E830C1471930F10EDD51ECF8C46FC7F-1" escape="true"><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.41520467836257%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">12.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Fair Value Measurements</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" id="TextSelection-8B68E2D0514B2035424A1ECF8C46BA83-0-wk-Fact-DC6E7F7EB2F6890F76E81ECF8BEE286D" continuedAt="TextSelection-8B68E2D0514B2035424A1ECF8C46BA83-1" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):</span></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="12"></td></tr><tr><td style="width:59%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value Measurements as of</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 2 (1)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level&#160;3 (2)</span></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;"><span style="font-family:inherit;font-size:10pt;">Assets:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds, $17,016 at cost (3)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e920-wk-Fact-0679D643BF5EBAC155271ECF8BEE8E26" name="us-gaap:AvailableForSaleSecurities" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e939-wk-Fact-234377EDE5AD7BEBF25A1ECF8BA8E6A0" name="us-gaap:AvailableForSaleSecurities" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,032</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e958-wk-Fact-CE35F7AAA6335079EB0A1ECF8BF27B1D" name="us-gaap:AvailableForSaleSecurities" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e974-wk-Fact-78328EFD5ABFF5E247EF1ECF8C13CC62" name="us-gaap:DerivativeAssets" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e993-wk-Fact-F58568BFB6FF6203D2A91ECF8BA1D3AC" name="us-gaap:DerivativeAssets" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">15,314</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1012-wk-Fact-DD0DA2EB920E5D878D7B1ECF8BA2D0B7" name="us-gaap:DerivativeAssets" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1038-wk-Fact-26F6CAC6170C66383F031ECF8BA38093" name="us-gaap:AssetsFairValueDisclosure" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1057-wk-Fact-2D60AA99DF82EEF936171ECF8C0DF2AB" name="us-gaap:AssetsFairValueDisclosure" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,346</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1076-wk-Fact-AD8DF91E83824F8045A41ECF8BF3B0E7" name="us-gaap:AssetsFairValueDisclosure" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1221-wk-Fact-87830D025A86CB1F05CC1ECF8C259345" name="us-gaap:DerivativeLiabilities" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1240-wk-Fact-3A121E1A4B50FCBBF5981ECF8BA38C77" name="us-gaap:DerivativeLiabilities" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">758</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1259-wk-Fact-7BD8029E8C2427BDEDC61ECF8C0BDDB2" name="us-gaap:DerivativeLiabilities" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1280-wk-Fact-FD15F9C94AFC3695C54F1ECF8BA7773A" name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1299-wk-Fact-2D552046BBDE83B0FB2E1ECF8BFA882C" name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">758</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1318-wk-Fact-14A73DF38CB9776AACC01ECF8BE37BA0" name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):</span></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="12"></td></tr><tr><td style="width:59%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value Measurements as of</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 2 (1)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level&#160;3 (2)</span></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;"><span style="font-family:inherit;font-size:10pt;">Assets:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Money market funds</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1611-wk-Fact-2B15A604EB239E2A620F1ECF8BA46047" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" contextRef="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,730</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1630-wk-Fact-8C3D56DB839B220758C71ECF8BA20D49" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" contextRef="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1649-wk-Fact-1DFA9B80520678DA2DC61ECF8BA7DC5D" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" contextRef="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds, $30,035 at cost</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1665-wk-Fact-76D6FC8618D7FF6FD48E1ECF8BAA6BE9" name="us-gaap:AvailableForSaleSecurities" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1684-wk-Fact-76CFAF2E5C7C8A6F4FAB1ECF8BA93A87" name="us-gaap:AvailableForSaleSecurities" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">29,605</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1703-wk-Fact-89F8066B2ED77B662D8D1ECF8BA78177" name="us-gaap:AvailableForSaleSecurities" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1724-wk-Fact-914B569C6FCFC834E965308A42C9CB26" name="us-gaap:NotesReceivableFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1743-wk-Fact-4BEA330B255F8E4489C73089FABF6ACF" name="us-gaap:NotesReceivableFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1762-wk-Fact-999F82DBA5A5E4C838BE3088C686E08B" name="us-gaap:NotesReceivableFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1783-wk-Fact-7BE5169CA44E8429F2441ECF8BABEF99" name="us-gaap:DerivativeAssets" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1802-wk-Fact-368BC14EFCC475CA73381ECF8BA5B777" name="us-gaap:DerivativeAssets" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">776</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1821-wk-Fact-31CFB86DDE18EE69F2D11ECF8BA44DE4" name="us-gaap:DerivativeAssets" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1847-wk-Fact-1CA3EC093AA0078DDD471ECF8BA5C087" name="us-gaap:AssetsFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,730</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1866-wk-Fact-DA65B3225834E32AA2B31ECF8BA6BC0F" name="us-gaap:AssetsFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">30,381</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e1885-wk-Fact-9DB1085D644405C2A8951ECF8BA30673" name="us-gaap:AssetsFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,000</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2031-wk-Fact-49B3F05A36DB5FC66E4D1ECF8BA32652" name="us-gaap:DerivativeLiabilities" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2050-wk-Fact-CEFF7BD7E8DC40C2C0FF1ECF8BA5CAB7" name="us-gaap:DerivativeLiabilities" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,130</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2069-wk-Fact-073B2B66BA3F3F77D23D1ECF8BA841C6" name="us-gaap:DerivativeLiabilities" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2090-wk-Fact-DC31931F2FD101BD6C941ECF8BA64AF4" name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2109-wk-Fact-0C102B2E6A1BB9EEEB691ECF8BAA7519" name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,130</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2128-wk-Fact-B46AA6A8D23FCEB412DC1ECF8BA66FFB" name="us-gaap:LiabilitiesFairValueDisclosure" contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 2 fair value estimates are based on observable inputs other than quoted prices in active markets for identical assets and liabilities, quoted prices for identical or similar assets or liabilities in inactive markets, or other inputs that </span></div></td></tr></table></ix:nonNumeric></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">63</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-8E830C1471930F10EDD51ECF8C46FC7F-1"><ix:continuation id="TextSelection-8B68E2D0514B2035424A1ECF8C46BA83-1"><div style="line-height:120%;padding-left:48px;padding-top:6px;"><span style="font-family:inherit;font-size:10pt;">are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.</span></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(2)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 3 fair value estimates are based on inputs that are generally unobservable and typically reflect management&#8217;s estimates of assumptions that market participants would use in pricing the asset or liability. The fair values are therefore determined using model-based techniques, including option pricing and discounted cash flow models.&#160;Unobservable inputs used in the models are significant to the fair values of the assets and liabilities.</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(3)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;December&#160;28, 2019, the Company&#8217;s investments had maturity dates ranging from February 2020 to March 2021.</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides a summary of changes in fair value of our Level 3 investment for the twelve months ended December 28, 2019 (in thousands):</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ConvertibleDebtTableTextBlock" id="TextSelection-E31BB63BC4326A0F195B1ECF8C46D18F-0-wk-Fact-A1B4AE2A8355BF66E0B71ECF8BECB61A" escape="true"><div style="line-height:120%;padding-top:6px;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:81%;"></td><td style="width:1%;"></td><td style="width:17%;"></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2199-wk-Fact-FE75E863E8B444FCA9C01ECF8BF574B2" name="us-gaap:NotesReceivableFairValueDisclosure" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Conversion of convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27606649e2214-wk-Fact-927052633F9057593B561ECF8BF5CF34" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,000</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606649e2240-wk-Fact-0B548B72F91F0D7F79001ECF8BF53AB0" name="us-gaap:NotesReceivableFairValueDisclosure" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:continuation><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="s4DF094B476B9503A9D78AB8E249C3AEB"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" id="TextSelection-DA0B30A12FD3D214F72F1ECF8C46EE75-0-wk-Fact-D82F3E3F9923406C47671ECF8C27296E" continuedAt="TextSelection-DA0B30A12FD3D214F72F1ECF8C46EE75-1" escape="true"><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="2"></td></tr><tr><td style="width:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">13.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Stockholders' Equity</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Preferred Stock</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has authorized </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27603152e638-wk-Fact-628A46269E3ACB606AF21ECF8C2B663B" name="us-gaap:PreferredStockSharesAuthorized" contextRef="FI2019Q4" unitRef="shares" decimals="0" scale="0" format="ixt:numdotdecimal">5,000,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares of undesignated preferred stock with a par value of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27603152e642-wk-Fact-83EE26230C71F264B9A61ECF8C282007" name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="INF" scale="0" format="ixt:numdotdecimal">0.01</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> per share. None of the preferred shares were issued and outstanding at </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Common Stock</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Common stockholders are entitled to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27603152e660-wk-Fact-6A926D62AEBC428683531ECF8C29F6C4" name="irbt:CommonStockNumberOfVotesPerShare" contextRef="FI2019Q4" unitRef="vote" decimals="INF" scale="0" format="ixt-sec:numwordsen">one</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> vote for each share held and to receive dividends if and when declared by the Company's board of directors and subject to and qualified by the rights of holders of the preferred stock. Upon dissolution or liquidation of the Company, holders of common stock will be entitled to receive all available assets subject to any preferential rights of any then outstanding preferred stock.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Share Repurchase Activity</span></div></ix:nonNumeric><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><ix:continuation id="TextSelection-DA0B30A12FD3D214F72F1ECF8C46EE75-1" continuedAt="TextSelection-DA0B30A12FD3D214F72F1ECF8C46EE75-2"><span style="font-family:inherit;font-size:10pt;">On February 27, 2018, the Company's board of directors approved a stock repurchase program authorizing up to </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27603152e670-wk-Fact-441101290E47D7FFA87C1ECF8C271446" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" contextRef="I2018Q1RepurchaseDate" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">50.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in share repurchases. This share repurchase program commenced on March 28, 2018 with an expiration date of December 28, 2018. As of June 30, 2018, the Company completed the repurchase program and repurchased </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27603152e674-wk-Fact-D2EC8A4CB589AA259AD51ECF8C2A71D0" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodShares" contextRef="FD2018Q4YTD" unitRef="shares" decimals="0" scale="0" format="ixt:numdotdecimal">798,794</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares of common stock totaling </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27603152e678-wk-Fact-B0A113F844B07B3ACDC51ECF8C29D8BE" name="us-gaap:StockRepurchasedAndRetiredDuringPeriodValue" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">50.0</ix:nonFraction> million</span></span></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-DA0B30A12FD3D214F72F1ECF8C46EE75-2">.</ix:continuation> </span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s0A6A2B5D1F14553CA9C12C871401750B"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:CompensationAndEmployeeBenefitPlansTextBlock" id="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-0-wk-Fact-BB771BE7DBD4C2DDCF231ECF8BAA60EF" continuedAt="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-1" escape="true"><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="2"></td></tr><tr><td style="width:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">14.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Stock-Based Compensation</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has awards and options outstanding under </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e635-wk-Fact-BCDEC77B78502A5DCFB81ECF8BAB5243" name="irbt:SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans" contextRef="FI2019Q4" unitRef="plan" decimals="INF" scale="0" format="ixt-sec:numwordsen">three</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> stock incentive plans: the 2005 Stock Option and Incentive Plan (the "2005 Plan"), the 2015 Stock Option and Incentive Plan (the "2015 Plan") and the 2018 Stock Option and Incentive Plan (the "2018 Plan" and together with 2005 Plan  and the 2015 Plan, the "Plans"). The 2018 Plan is the only one of the three plans under which new awards may currently be granted.  Under the 2018 Plan, which became effective on May 23, 2018, </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e639-wk-Fact-548E4760DE1CF26B28241ECF8BB6E8FC" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" contextRef="I2018Q2SD" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">1,750,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;">&#160;shares were initially reserved for issuance in the form of incentive stock options, non-qualified stock options, stock appreciation rights, restricted stock awards, restricted stock units, unrestricted stock awards, cash-based awards, and dividend equivalent rights. Stock awards returned to the Plans, with the exception of those issued under the 2005 Plan, as a result of their expiration, cancellation or termination are automatically made available for issuance under the 2018 Plan. Eligibility for incentive stock options is limited to those individuals whose employment status would qualify them for the tax treatment associated with incentive stock options in accordance with the Internal Revenue Code. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, there were </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e647-wk-Fact-848712AB87CB2A7781231ECF8BB1B1EC" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="FI2019Q4" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">1,293,482</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares available for future grant under the 2018 Plan. The Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e651-wk-Fact-89338316458D115055AB1ECF8BB05ACD" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">23.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e656-wk-Fact-77DDB94A9D05545EB3B91ECF8BB9173A" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">25.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e660-wk-Fact-0594245C0861E9F10F2C1ECF8BB840A8" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">19.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> of stock-based compensation expense during the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, December 29, 2018, and December 30, 2017, respectively. </span></div></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">64</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-1" continuedAt="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-2"><ix:nonNumeric contextRef="FD2019Q4YTD" name="irbt:SharebasedcompensationexpensebyclassificationTableTextBlock" id="TextSelection-54FCA43FB248303D140C30C7E75A2B48-0-wk-Fact-5B5A865102539CA5B01730CA53472735" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Stock-based compensation breaks down by expense classification as follows (in thousands):</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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="12"></td></tr><tr><td style="width:59%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e832-wk-Fact-06AB28C79F57AEF755221ECF8BEA72C5" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,486</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e851-wk-Fact-D33D402872014652829F1ECF8BED545F" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,407</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e870-wk-Fact-FA5E541CB6281D7A76411ECF8BE85755" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,082</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Research and development</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e886-wk-Fact-68A64B527408C12DD69B1ECF8BED48E0" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,186</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e905-wk-Fact-F4568D3CEF56D07F8A5D1ECF8BEADE19" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,494</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e924-wk-Fact-F6622E9F845FA94952A71ECF8BEC9816" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,009</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e945-wk-Fact-AD1B1ADF882480CFE7061ECF8BEDE6AA" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,323</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e964-wk-Fact-256AB759F0D2A6D07C041ECF8BEEC553" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,842</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e983-wk-Fact-0AB650E8F277CC3F55111ECF8BE9F681" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,571</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">General and administrative</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1004-wk-Fact-0686CFC22930A9F8BBF41ECF8BEAF7AA" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">9,749</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1023-wk-Fact-1EA3B62E006701A2C4AF1ECF8BE9096D" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,061</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1042-wk-Fact-C5B1E6219D915E2402491ECF8BE9E1B7" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,089</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1068-wk-Fact-C385586B044D4EEEC87C1ECF8BE88DCE" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">23,744</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1087-wk-Fact-14B930C1984CD22FA3451ECF8BECEA3C" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,804</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1106-wk-Fact-24BFB9E9E4C8B524E7861ECF8BE85B91" name="us-gaap:AllocatedShareBasedCompensationExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">19,751</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Stock Options</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Options granted under the Plans are exercisable in full at any time subsequent to vesting, generally vest over </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e1122-wk-Fact-C8D2E972514FE8B961022CA5FF5DFF1F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:durwordsen">four years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;">, and expire </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e1126-wk-Fact-FBFEB2FFF52162D28A592C94A0EB1786" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:durwordsen">five years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> or </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e1130-wk-Fact-BA5D2D9290FAB91DD9852CA48A1F12FA" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:durwordsen">ten years</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> from the date of grant or, if earlier, 90&#160;days from employee termination. The exercise price of stock options is typically equal to the Company's closing stock price on the date of grant.  </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the unamortized compensation costs associated with stock options was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e1141-wk-Fact-47A255C3AB0D51E53A9C1ECF8BBED767" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">0.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted-average remaining recognition period of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e1145-wk-Fact-9FA5EC522BD3F15C28151ECF8BB6448C" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember" format="ixt-sec:duryear">0.61</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years. </span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" id="TextSelection-16EA859B01F05475F90A1ECF8C479E4C-0-wk-Fact-5C4183103F18DDAE82F41ECF8BB53D4B" continuedAt="TextSelection-16EA859B01F05475F90A1ECF8C479E4C-1" escape="true"><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes stock option activity for fiscal years 2019, 2018 and 2017:</span><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="11"></td></tr><tr><td style="width:41%;"></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:15%;"></td><td style="width:1%;"></td><td style="width:13%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Exercise Price</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Remaining</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Contractual Term</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Aggregate</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Intrinsic</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Value(1)</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1269-wk-Fact-A67A523A562B2DEF20F91ECF8BA9A8A8" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2016Q4" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">1,088,174</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1288-wk-Fact-B67FA6F9F6E240D27E151ECF8BC39EB2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2016Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">32.27</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1323-wk-Fact-8D6AE5D28589B45AC3211ECF8BACD502" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="FD2017Q4YTD" unitRef="shares" decimals="0" scale="0" format="ixt:numdotdecimal">10,975</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1337-wk-Fact-7FF35C4D0EBB40FEF8551ECF8B9C6FCE" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">57.33</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e1377-wk-Fact-8E25A4B182DF066383E31ECF8B9CE9DD" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2017Q4YTD" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">367,267</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1392-wk-Fact-E1B2E5948CA745CBFA801ECF8B955D60" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">28.79</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e1432-wk-Fact-DD78829F7D131588203D1ECF8B9D9D39" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="FD2017Q4YTD" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">18,928</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1447-wk-Fact-299E8A95F693D954AF121ECF8BA503B3" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="FD2017Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">36.72</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1487-wk-Fact-0CABD302D904013C26DD1ECF8B9EC519" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2017Q4" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">712,954</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1506-wk-Fact-237C6B383E0A8DEF49871ECF8B96A612" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2017Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">34.34</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1541-wk-Fact-81B90C6A9BE7124204A11ECF8BA8AEE4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="FD2018Q4YTD" unitRef="shares" decimals="0" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1555-wk-Fact-5557FBBF79D86D2F77311ECF8BA7153D" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e1595-wk-Fact-2F91DD8C94519FAFB8151ECF8BA595C4" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2018Q4YTD" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">239,830</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1610-wk-Fact-9763D938B0018DDA072F1ECF8BACB2DA" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">33.40</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e1650-wk-Fact-5DDAE77C5A123B5881601ECF8B9F5273" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="FD2018Q4YTD" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">10,863</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1665-wk-Fact-423C861652DD3F65F07D1ECF8BA924DE" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="FD2018Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">46.20</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1705-wk-Fact-318A7BE74F79C2D732911ECF8BA24115" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2018Q4" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">462,261</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1724-wk-Fact-C14AD8D120E9D2C50B331ECF8BC1C431" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2018Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">34.55</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1759-wk-Fact-1FF571755253A044765E1ECF8B974C25" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" contextRef="FD2019Q4YTD" unitRef="shares" decimals="0" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1773-wk-Fact-A0715E919E42F524EDCF1ECF8B9D1B53" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e1814-wk-Fact-8D4DE694503DE49605321ECF8BA3948A" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" contextRef="FD2019Q4YTD" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">127,024</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1829-wk-Fact-33380844F6935371A02A1ECF8BA65A9D" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">32.95</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e1869-wk-Fact-532D098D70BCEDC353B71ECF8BA05D39" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" contextRef="FD2019Q4YTD" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">12,329</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1884-wk-Fact-E4D909C016B8597BA0DF1ECF8B9F1A54" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" contextRef="FD2019Q4YTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">37.03</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1924-wk-Fact-9FE87AA19205F8732BDC1ECF8B97C7D6" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" contextRef="FI2019Q4" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">322,908</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1943-wk-Fact-D2BD09433D21B9C180F91ECF8BA0530F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">35.08</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e1957-wk-Fact-862914F50AD793817ACC1ECF8BAD631C" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" contextRef="FD2019Q4YTD" format="ixt-sec:duryear">2.47</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e1967-wk-Fact-5E941C5CBBA0D933FA761ECF8BAB9815" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" contextRef="FI2019Q4" unitRef="usd" decimals="-4" scale="6" format="ixt:numdotdecimal">5.65</ix:nonFraction> million</span></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested and expected to vest at December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1978-wk-Fact-26D56C37293D92B5D5AC1ECF8BACB134" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" contextRef="FI2019Q4" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">322,908</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e1997-wk-Fact-5142E9EF2D60474DD9A11ECF8BA7F378" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">35.08</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e2011-wk-Fact-42417B6046992862568A1ECF8B9F6FDD" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" contextRef="FD2019Q4YTD" format="ixt-sec:duryear">2.47</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2021-wk-Fact-C8BE46DAEFC7043567261ECF8BAB1E2D" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" contextRef="FI2019Q4" unitRef="usd" decimals="-4" scale="6" format="ixt:numdotdecimal">5.65</ix:nonFraction> million</span></span></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;"><span style="font-family:inherit;font-size:10pt;">Exercisable as of December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2032-wk-Fact-A85B82711708246339DD1ECF8B99B2D8" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" contextRef="FI2019Q4" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">293,159</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2051-wk-Fact-7C80536FAA0BBEC3EFD21ECF8BAD81F7" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">34.30</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e2065-wk-Fact-D08AF91CBF2F4C73646C1ECF8B9EA6A2" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" contextRef="FD2019Q4YTD" format="ixt-sec:duryear">2.35</ix:nonNumeric> years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2075-wk-Fact-817FD098F860D9BDB1121ECF8BAE48BD" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" contextRef="FI2019Q4" unitRef="usd" decimals="-4" scale="6" format="ixt:numdotdecimal">5.32</ix:nonFraction> million</span></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;_________________________</span></div></ix:nonNumeric><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><ix:continuation id="TextSelection-16EA859B01F05475F90A1ECF8C479E4C-1" continuedAt="TextSelection-16EA859B01F05475F90A1ECF8C479E4C-2"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></ix:continuation></td><td style="vertical-align:top;"><ix:continuation id="TextSelection-16EA859B01F05475F90A1ECF8C479E4C-2"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate intrinsic value on the table above represents the difference between the Company's closing stock price on </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2097-wk-Fact-4EE791C055AB178FB64A1ECF8BBD231F" name="us-gaap:SharePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">50.20</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> and the exercise price of the underlying in-the-money option.</span></div></ix:continuation></td></tr></table><div style="line-height:120%;padding-left:4px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During fiscal years 2019, 2018, and 2017, the total intrinsic value of stock options exercised was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2128-wk-Fact-F8174E8D7E1F41F4FD271ECF8BB57E81" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">8.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2132-wk-Fact-BF3AA31BC00E02AAAFF51ECF8BB9A116" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">14.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2136-wk-Fact-B4ECB01C322016AC00761ECF8BAF4012" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">21.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively.  </span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Time-based Restricted Stock Units</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Time-based restricted stock units entitle the holder to a specific number of shares of common stock upon vesting, typically over a </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e2173-wk-Fact-F0A8C4F610D61F04F1D40D588F9219D7" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">four year</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> period. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the unamortized compensation costs associated with restricted stock units was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2181-wk-Fact-CF148398C4303EC020621ECF8BAE71CB" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">49.2</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted-average remaining recognition period of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e2185-wk-Fact-F79606022A16040BBCDA1ECF8BB66433" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" format="ixt-sec:duryear">2.53</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years. </span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">65</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-2" continuedAt="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-3"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" id="TextSelection-56760F7735292742676F1ECF8C478146-0-wk-Fact-A33E753D67B1A70671351ECF8BB75FA0" escape="true"><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the time-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:</span></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="7"></td></tr><tr><td style="width:69%;"></td><td style="width:14%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Shares&#160;Underlying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Restricted Stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Grant Date Fair</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2273-wk-Fact-EAC1C3B8AEBB7BC69B661ECF8B9F7C8A" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">935,179</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2292-wk-Fact-7BB93D1297D87B5B05071ECF8BA8EB82" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">35.07</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2307-wk-Fact-820844BD3F93CD3154051ECF8B9D746D" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">396,164</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2321-wk-Fact-2602DC6CD97B07589C621ECF8BA391CD" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">72.63</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2341-wk-Fact-14A112F9ECA091AC1F931ECF8B99953E" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">351,543</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2356-wk-Fact-5FE8CB01DEBEFD9D8CA81ECF8B95A38A" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">33.73</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2376-wk-Fact-5928E180C9F30A5634BF1ECF8BA8E83F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">41,347</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2391-wk-Fact-6A086062B24CC57C5F581ECF8B9AD3E7" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">39.52</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2411-wk-Fact-818D427A4988617729841ECF8BB1ABAC" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">938,453</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2430-wk-Fact-458ECB0CA1D4755B204F1ECF8BA2CD97" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">51.24</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2445-wk-Fact-04375BDC47433809D0AF1ECF8BA5239E" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">307,614</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2459-wk-Fact-635E90835B6FC18E3A0B1ECF8B9C6681" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">81.55</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2479-wk-Fact-30E249BB7B79D899030B1ECF8B8F289C" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">351,816</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2494-wk-Fact-F5D9535046ECCC4C0A801ECF8B9D5F66" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">47.30</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2514-wk-Fact-0094D15F47F45976A10C1ECF8B96A335" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">38,362</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2529-wk-Fact-EE5AEC2FB25DE75838B31ECF8B9E4590" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">60.62</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2549-wk-Fact-F4015394238B9180AED31ECF8B93BEB1" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">855,889</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2568-wk-Fact-9365489BDC34FD9E5F331ECF8BAE749F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">63.32</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2583-wk-Fact-344AA0088DD11C873B791ECF8B95D89D" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">407,325</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2597-wk-Fact-6A7F13C005F2DD63ABAB1ECF8BA134D9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">79.91</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2618-wk-Fact-64FDFB320A1183B25BC71ECF8B9BAE4D" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">358,119</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2633-wk-Fact-0320C0CCBA7544F95B691ECF8B9EA3EE" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">54.89</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2653-wk-Fact-BA3030C6FEF8FB69998E1ECF8BA56B30" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">85,863</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2668-wk-Fact-4E4756D0FD92A52F57501ECF8BA0CEE2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">76.85</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2688-wk-Fact-6B2BE6A258FD84221F4E1ECF8BAA566F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">819,232</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2707-wk-Fact-3EBD4960A5C75032E27A1ECF8B9C51AD" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">73.83</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-left:4px;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate intrinsic value of outstanding time-based restricted stock units at </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2731-wk-Fact-73113E0B8EED36E1FD831ECF8BB44BB6" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">42.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> based on the Company's closing stock price on </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2739-wk-Fact-4EE791C055AB178FB64A1ECF8BBD231F" name="us-gaap:SharePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">50.20</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;">, with a weighted average remaining contractual term of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e2743-wk-Fact-69589B65216899BC69FE1ECF8BAA84D5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember" format="ixt-sec:duryear">1.52</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years.</span></div><div style="line-height:120%;padding-bottom:13px;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Performance-Based Restricted Stock Units</span></div><div style="line-height:120%;padding-bottom:13px;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company grants performance-based restricted stock units ("PSUs") to certain of its employees. The PSUs have performance metrics based on financial performance of the Company measured at the end of a </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e2753-wk-Fact-F5A0097DEEF56C216A4A0D617A011CA9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">three year</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> performance period. For the 2017 grant year, the performance metric for these awards is based on revenue, operating income and/or operating income percent, with a threshold requirement for a minimum amount of revenue growth. Starting in 2018, the Company has removed revenue as a performance metric in the PSU plan design and changed the payout metric from three-year cumulative operating income as a percentage of annual revenue to three-year cumulative operating income in dollars. The number of shares actually earned at the end of the three-year period will range from </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2757-wk-Fact-1387A6DDB98B0BA9BC311ECF8BBC76F7" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">0</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2761-wk-Fact-FF19C889D78B207E66A31ECF8BB755C4" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">200</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of the target number of PSUs granted based on the Company&#8217;s performance against the performance conditions.</span></div><div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The unamortized fair value as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> associated with performance based restricted stock units was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e2774-wk-Fact-F5E79927C2A639450A8F1ECF8BBCEC27" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted-average remaining recognition period of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e2778-wk-Fact-56C7A0056299D5FB24241ECF8BBB7140" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" format="ixt-sec:duryear">1.04</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years. </span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">66</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-3" continuedAt="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-4"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock" id="TextSelection-77CF141EB6DB164F052E1ECF8C474D9A-0-wk-Fact-65AB862DF1158A82C3861ECF8BB80358" escape="true"><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the performance-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:</span></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.41520467836257%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"></td></tr><tr><td style="width:69%;"></td><td style="width:14%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of<br/>Shares&#160;Underlying<br/>PSU</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average<br/>Grant Date Fair<br/>Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2848-wk-Fact-60FE2C89CEC135618FCF1ECF8B90D55C" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">163,911</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2867-wk-Fact-F5C61CE47B2FAE92083F1ECF8BA29E99" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">35.03</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2882-wk-Fact-4DF312E57E255879D5421ECF8B94C9BB" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">105,650</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2896-wk-Fact-C50D6562B93B5614669C1ECF8C1C6501" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">57.33</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2916-wk-Fact-FD68BBB2E84C39B0EAFF1ECF8B907714" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">24,792</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2931-wk-Fact-2DC26B080408AC9DA2781ECF8B8FEB8B" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">43.35</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e2951-wk-Fact-6F4A8D7D51B70A7091DA1ECF8BC4ACC0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">2,708</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2966-wk-Fact-9C12CBEE9E830D8228DF1ECF8B9125CB" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">39.71</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e2986-wk-Fact-9DCA4BFAEEB5AFA2D2951ECF8C18455C" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">242,061</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3005-wk-Fact-05931667972E4294497B1ECF8B995D66" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">43.97</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3020-wk-Fact-4C113345CE09B22CC3AF1ECF8BA699F7" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">91,538</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3034-wk-Fact-75D1833F4D1A580A5F9D1ECF8B8F2DFF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">68.41</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e3054-wk-Fact-F389093B46CA3248E5D31ECF8B9AF31F" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">56,259</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3069-wk-Fact-E3ECC4028D9A5F80D0AD1ECF8B97CECC" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">34.30</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e3089-wk-Fact-8B973A207BEB4DCF448E1ECF8BA0659E" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">3,221</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3104-wk-Fact-1680EDC2E416CE25063E1ECF8B904FB2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">45.71</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3124-wk-Fact-761BFAE97B01D8F2E4CD1ECF8B978C80" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">274,119</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3143-wk-Fact-90456D9D5C99937BEA7F1ECF8B9081A9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">54.10</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3158-wk-Fact-3C3DB668C789FC48B06A1ECF8B9B3805" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">70,827</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3172-wk-Fact-17F34FAE61D43D6C11D81ECF8B90FAB1" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">122.20</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e3193-wk-Fact-83BF7F897037E57241201ECF8BA7FFF5" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">78,943</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3208-wk-Fact-B104AF7A69321B443A241ECF8B95E2BA" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">33.33</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27610382e3228-wk-Fact-49D19855E06C79E8431C1ECF8B921431" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">49,772</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3243-wk-Fact-7E7D571747ECA5B3C1701ECF8B915D32" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">78.29</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3263-wk-Fact-AE32B47D311A0C8493CD1ECF8B946A58" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="shares" decimals="INF" scale="0" format="ixt:numdotdecimal">216,231</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3282-wk-Fact-CFF8369D6D7ABF7BDD451ECF8B9F2B42" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">78.42</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate intrinsic value of outstanding PSUs was </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e3296-wk-Fact-0D77E5446A76E3EBFAD91ECF8BBE6A66" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">11.3</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> based on the Company's closing stock price on </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e3304-wk-Fact-4EE791C055AB178FB64A1ECF8BBD231F" name="us-gaap:SharePrice" contextRef="FI2019Q4" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">50.20</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted average remaining contractual term of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonNumeric id="d27610382e3308-wk-Fact-FAC5B2E369AB3B43A27A1ECF8BB71265" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember" format="ixt-sec:duryear">1.04</ix:nonNumeric></span></span><span style="font-family:inherit;font-size:10pt;"> years.</span></div><div style="line-height:120%;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock" id="TextSelection-6F540F438A5F39197C191ECF8C473793-0-wk-Fact-C474B69AB3D2975DA1921ECF8BBBC1EE" continuedAt="TextSelection-6F540F438A5F39197C191ECF8C473793-1" escape="true"><div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Employee Stock Purchase Plan</span></div></ix:nonNumeric></ix:continuation><div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"><ix:continuation id="TextSelection-6F540F438A5F39197C191ECF8C473793-1" continuedAt="TextSelection-6F540F438A5F39197C191ECF8C473793-2"><ix:continuation id="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-4" continuedAt="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-5"><span style="font-family:inherit;font-size:10pt;">In May 2017, the Company&#8217;s stockholders approved the 2017 Employee Stock Purchase Plan ("ESPP").  Eligible employees may purchase the Company&#8217;s common stock through payroll deductions at a price equal to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3322-wk-Fact-B3506FC539EFFC6DBA9B1ECF8BACACA9" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" contextRef="D2017Q2May" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">85</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of the lower of the fair market values of the stock as of the beginning or the end of six-month offering periods beginning November 15 and May 15 of each year.  An employee&#8217;s payroll deductions under the ESPP are limited to </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3326-wk-Fact-BE69B5BCD8C7B5C1B97C1ECF8BB4E902" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" contextRef="I2017Q2May" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">15</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of the employee&#8217;s compensation, up to </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e3330-wk-Fact-45E5BC679AB2DC644B361ECF8BBD3195" name="irbt:SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount" contextRef="I2017Q2May" unitRef="usd" decimals="0" scale="0" format="ixt:numdotdecimal">4,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> each period, for the purchase of common stock not to exceed </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3334-wk-Fact-32D7CF0A3D581D692A471ECF8BB4553B" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" contextRef="D2017Q2May" unitRef="shares" decimals="0" scale="0" format="ixt:numdotdecimal">1,000</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares per offering period.  As of December 28, 2019, there were </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610382e3338-wk-Fact-D6D4A8DFD9B3A7A36E711ECF8BAC022E" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember" unitRef="shares" decimals="0" scale="0" format="ixt:numdotdecimal">570,962</ix:nonFraction></span></span><span style="font-family:inherit;font-size:10pt;"> shares reserved for future issuance under the ESPP.  The Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e3343-wk-Fact-4DB4B14C4F26243286E91ECF8BB4E015" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e3347-wk-Fact-1D1B818F42A253C801081ECF8BB32A5E" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27610382e3351-wk-Fact-AEEB626681CA58237EC83A897DD6DC16" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">0.1</ix:nonFraction> million</span></span></ix:continuation></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-6F540F438A5F39197C191ECF8C473793-2"><ix:continuation id="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-5"> of stock-based compensation expense during the fiscal years ended December&#160;28, 2019, December 29, 2018, and December 30, 2017, respectively.</ix:continuation></ix:continuation> </span></div><div><a id="s690933648E9553B2888A9994233C1581"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="TextSelection-EDF48531714F32BB378B1ECF8C471B97-0-wk-Fact-5C032781EE692B7D416A1ECF8BAD89F5" continuedAt="TextSelection-EDF48531714F32BB378B1ECF8C471B97-1" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">15.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Commitments and Contingencies</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Legal Proceedings</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time and in the ordinary course of business, the Company is subject to various claims, charges and litigation. The outcome of litigation cannot be predicted with certainty and some lawsuits, claims or proceedings may be disposed of unfavorably to us, which could materially affect our financial condition or results of operations. For the following litigation matters, a liability is not probable or the amount cannot be reasonably estimated and therefore accruals have not been made.</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October 24, 2019, purported Company shareholder Miramar Firefighters&#8217; Pension Fund filed a putative class action in the U.S. District Court for the Southern District of New York against the Company and certain of its directors and officers, captioned&#160;Miramar Firefighters&#8217; Pension Fund v. iRobot Corporation, et al., No. 1:19-cv-09837.&#160; The complaint alleges violations of Sections 10(b) and 20(a) of the Securities Exchange Act of 1934, as amended (the "Exchange Act") and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts. A similar case captioned Campbell v. iRobot Corporation, et al., No. 1:19-cv-12483 was also filed in the U.S. District Court for the Southern District of New York and subsequently transferred to the </span></div></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">67</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-EDF48531714F32BB378B1ECF8C471B97-1" continuedAt="TextSelection-EDF48531714F32BB378B1ECF8C471B97-2"><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">U.S. District Court for the District of Massachusetts. On January 24, 2020, the Court consolidated the Miramar and Campbell cases and appointed a lead plaintiff and lead plaintiff's Counsel.&#160; </span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 20, 2019, purported Company shareholders David Katz and Thomas Wightman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for Southern District of New York against the Company and certain of its directors and officers, captioned&#160;David Katz and Thomas Wightman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:19-cv-11692. The complaint alleges breaches of fiduciary duties, unjust enrichment,&#160; violations of Sections 10(b) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts.</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On January 9, 2020, purported Company shareholder Robert Truman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Robert Truman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10034. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On January 22, 2020, purported Company shareholder Alexa Ruhfass, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Alexa Ruhfass, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10133. The complaint alleges breaches of fiduciary duties, unjust enrichment, waste of corporate assets, and violations of Sections 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 10, 2020, purported Company shareholder William Tasco, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;William Tasco, derivatively on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10253. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Outstanding Purchase Orders</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:Times New Roman;font-size:10pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had outstanding purchase orders aggregating approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27609228e682-wk-Fact-6808AA60B762CB6C14481ECF8BC53446" name="us-gaap:ContractualObligation" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">124.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">. The purchase orders, the majority of which are with our contract manufacturers for the purchase of inventory in the normal course of business, are for manufacturing and non-manufacturing related goods and services, and are generally cancelable without penalty.&#160; In circumstances where we determine that we have financial exposure associated with any of these commitments, we record a liability in the period in which that exposure is identified.</span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">68</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-EDF48531714F32BB378B1ECF8C471B97-2" continuedAt="TextSelection-EDF48531714F32BB378B1ECF8C471B97-3"><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Guarantees and Indemnification Obligations</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company enters into standard indemnification agreements in the ordinary course of business. Pursuant to these agreements, the Company indemnifies and agrees to reimburse the indemnified party for losses incurred by the indemnified party, generally the Company&#8217;s customers, in connection with any patent, copyright, trade secret or other proprietary right infringement claim by any third party. The term of these indemnification agreements is generally perpetual any time after execution of the agreement. The maximum potential amount of future payments the Company could be required to make under these indemnification agreements is unlimited. The Company has never incurred costs to defend lawsuits or settle claims related to these indemnification agreements. As a result, the Company believes the estimated fair value of these agreements is minimal. Accordingly, the Company has no liabilities recorded for these agreements as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Warranty</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company provides warranties on most products and has established a reserve for warranty obligations based on estimated warranty costs. The reserve is included as part of accrued expenses (Note&#160;9)&#160;in the accompanying consolidated balance sheets.</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="TextSelection-19CC8CEF6B1EE2B1A5871ECF8C477D78-0-wk-Fact-B57EB2D63DC5FD01489C1ECF8BE5DDFC" continuedAt="TextSelection-19CC8CEF6B1EE2B1A5871ECF8C477D78-1" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Activity related to the warranty accrual was as follows (in thousands):</span></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="12"></td></tr><tr><td style="width:59%;"></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e875-wk-Fact-7B7859BC595D3C0702151ECF8BDB8F55" name="us-gaap:StandardProductWarrantyAccrual" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,964</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e894-wk-Fact-493803D7298C1D0DD2AD1ECF8BCDA154" name="us-gaap:StandardProductWarrantyAccrual" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,264</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e913-wk-Fact-0F211C223E9EABAE190E1ECF8BD86817" name="us-gaap:StandardProductWarrantyAccrual" contextRef="FI2016Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,464</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Liability assumed (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e929-wk-Fact-325CB8242AD9499EDB041ECF8BAFDAFC" name="us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e948-wk-Fact-79B877525EE862CAD5D81ECF8BD9C852" name="us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e967-wk-Fact-272AE954D14EAC968DF91ECF8BD17FCD" name="us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,186</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e988-wk-Fact-A7D0108061AFA72704481ECF8BD611FE" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,091</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e1007-wk-Fact-AF3A2D2F17A3D8B6E32F1ECF8BCC8D4D" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,798</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e1026-wk-Fact-E3119F750362E10A12331ECF8BD6B288" name="us-gaap:StandardProductWarrantyAccrualWarrantiesIssued" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,591</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Warranty usage</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27609228e1047-wk-Fact-7817382FC0CE488259021ECF8BD33375" name="us-gaap:StandardProductWarrantyAccrualPayments" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">12,199</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27609228e1067-wk-Fact-E315F62BC87731AD551C1ECF8BDEA66D" name="us-gaap:StandardProductWarrantyAccrualPayments" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,098</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27609228e1087-wk-Fact-A9E2EA1169A3C97CBAC41ECF8BDC33A7" name="us-gaap:StandardProductWarrantyAccrualPayments" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,977</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e1114-wk-Fact-7AAD57E2498419B904231ECF8BDE477D" name="us-gaap:StandardProductWarrantyAccrual" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,856</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e1133-wk-Fact-7B7859BC595D3C0702151ECF8BDB8F55" name="us-gaap:StandardProductWarrantyAccrual" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,964</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27609228e1152-wk-Fact-493803D7298C1D0DD2AD1ECF8BCDA154" name="us-gaap:StandardProductWarrantyAccrual" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,264</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;__________________________________</span></div></ix:nonNumeric></ix:continuation><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><ix:continuation id="TextSelection-19CC8CEF6B1EE2B1A5871ECF8C477D78-1" continuedAt="TextSelection-19CC8CEF6B1EE2B1A5871ECF8C477D78-2"><ix:continuation id="TextSelection-EDF48531714F32BB378B1ECF8C471B97-3" continuedAt="TextSelection-EDF48531714F32BB378B1ECF8C471B97-4"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(1) </span></div></ix:continuation></ix:continuation></td><td style="vertical-align:top;"><ix:continuation id="TextSelection-19CC8CEF6B1EE2B1A5871ECF8C477D78-2"><ix:continuation id="TextSelection-EDF48531714F32BB378B1ECF8C471B97-4"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Warranty assumed as part of the acquisition of the iRobot-related distribution business of SODC.</span></div></ix:continuation></ix:continuation></td></tr></table><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="sBC65EE8A1AEC555E9ECF9A877575DC6B"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock" id="TextSelection-007A6CD7D1B7D11C90811ECF8C488DDD-0-wk-Fact-81E45A5523C27EE580B01ECF8BE58949" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">16.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Employee Benefits</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company sponsors a retirement plan under Section&#160;401(k) of the Internal Revenue Code (the "Retirement Plan"). All Company employees, with the exception of temporary, contract and international employees are eligible to participate in the Retirement Plan after satisfying age requirements prescribed by the Retirement Plan. Under the Retirement Plan, employees may make tax-deferred contributions, and the Company, at its sole discretion, and subject to the limits prescribed by the IRS, may make either a nonelective contribution on behalf of all eligible employees or a matching contribution on behalf of all plan participants.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company elected to make a matching contribution of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27606958e642-wk-Fact-BFF2FBA65272101FDA0D1ECF8BE5B991" name="us-gaap:DefinedContributionPlanCostRecognized" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27606958e646-wk-Fact-27CFE0340071DA5BC0C41ECF8BBCD0F1" name="us-gaap:DefinedContributionPlanCostRecognized" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27606958e650-wk-Fact-266E67226E805E8B275E1ECF8BAB88DF" name="us-gaap:DefinedContributionPlanCostRecognized" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">2.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> for the plan years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, respectively. The employer contribution represents a matching contribution at a rate of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606958e667-wk-Fact-3CF700F949C78DAF6C9C1ECF8BAC9777" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" contextRef="FD2019Q4YTD" unitRef="number" decimals="INF" scale="-2" format="ixt:numdotdecimal">50</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of each employee&#8217;s first </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606958e671-wk-Fact-EAC8C4C42657521A636F1ECF8BB21DF9" name="us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent" contextRef="FD2019Q4YTD" unitRef="number" decimals="INF" scale="-2" format="ixt-sec:numwordsen">six</ix:nonFraction> percent</span></span><span style="font-family:inherit;font-size:10pt;"> contribution. Accordingly, each employee participating is entitled up to a maximum of </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27606958e675-wk-Fact-82BEB88AE474F35948E11ECF8BE5C4D0" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" contextRef="FD2019Q4YTD" unitRef="number" decimals="INF" scale="-2" format="ixt-sec:numwordsen">three</ix:nonFraction> percent</span></span><span style="font-family:inherit;font-size:10pt;"> of his or her eligible annual payroll.</span></div></ix:nonNumeric><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">69</span></div></div><hr style="page-break-after:always"></hr><div><a id="s02B0613883615541B6CBD159C188AF43"></a></div><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:IncomeTaxDisclosureTextBlock" id="TextSelection-4318045B078598AEFB0D1ECF8C48B142-0-wk-Fact-BF2C438DEB02881B17F01ECF8BD2EECA" continuedAt="TextSelection-4318045B078598AEFB0D1ECF8C48B142-1" escape="true"><div style="line-height:120%;padding-left:0px;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;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">17.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Income Taxes</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" id="TextSelection-2FF8616CE0E02CFF23E31ECF8C484753-0-wk-Fact-7C521865D64299C588321ECF8BC463E6" escape="true"><div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Income (loss) before provision for income taxes was as follows (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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="12"></td></tr><tr><td style="width:62%;"></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:10%;"></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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e795-wk-Fact-64A29CDA42758BC07EE61ECF8BD45F85" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">84,225</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e814-wk-Fact-E81D2B75569371E2BF8B1ECF8BD8E52D" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">113,078</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e833-wk-Fact-75375ED91E7488C6C9F81ECF8BD2DC14" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">71,382</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e849-wk-Fact-E07637FA355AB9DA59951ECF8BD3385D" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,608</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e868-wk-Fact-597CB0F04298E7C9CF661ECF8BBFACE3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">4,456</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e888-wk-Fact-CC84A81C9BDAE3F4B1A71ECF8BB568F6" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,984</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income before income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e914-wk-Fact-03FB067FCA73C1F5C5921ECF8C2024AD" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">98,833</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e933-wk-Fact-1F63C4B83778EE7F839D1ECF8BCA93D9" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">108,622</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e952-wk-Fact-C0FFAF418D6578BE77651ECF8C1B319E" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">76,366</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" id="TextSelection-DDA0930E52B443F31A7A1ECF8C483BC5-0-wk-Fact-B41691C6BD91CCEB813C1ECF8BC53E25" escape="true"><div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of income tax expense were as follows (in thousands):</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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:62%;"></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:10%;"></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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Current</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1196-wk-Fact-A9A967F21249D14B34EB1ECF8BCD65BF" name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,366</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1215-wk-Fact-916C0FC8A88F193BA8291ECF8BC20410" name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,627</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1234-wk-Fact-81342AA84DEAF1CEEDF11ECF8BCEDBBA" name="us-gaap:CurrentFederalTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,555</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1250-wk-Fact-B000DEB7CC0C7E5F6B4B1ECF8BD095FD" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,004</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1269-wk-Fact-08F81C4BA8B02A62C3561ECF8BC62693" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,676</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1288-wk-Fact-005227C7ABDF2E9761421ECF8BCC9234" name="us-gaap:CurrentStateAndLocalTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,691</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1309-wk-Fact-7A0DE80CC93D734C1BFE1ECF8BCA54DD" name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,941</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1328-wk-Fact-C7C4DAD2EACF34869F161ECF8BC37A20" name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,732</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1347-wk-Fact-93B7A9974D45C2D326DE1ECF8BAE2DF0" name="us-gaap:CurrentForeignTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,355</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total current income tax provision</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1373-wk-Fact-42B82AD28966A148968D1ECF8BCBF78D" name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,311</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1392-wk-Fact-2068C549F0E040D07F691ECF8BD1A514" name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,035</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1411-wk-Fact-DA6962D60D5ED41FB3871ECF8BD25F56" name="us-gaap:CurrentIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">26,601</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Federal</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1494-wk-Fact-8025EF8464BE7A28C3B41ECF8BC44960" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">9,345</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1514-wk-Fact-A7882273E3A290DE03371ECF8B9453BE" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,475</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1534-wk-Fact-62F19105E2C50BDA3FE21ECF8BC8B72E" name="us-gaap:DeferredFederalIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,664</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1550-wk-Fact-2577AC7272E8C723BE091ECF8BAEB8DB" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,783</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1570-wk-Fact-4BFBE4ED62833E89E6D61ECF8BD50513" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,149</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1590-wk-Fact-FE4D1EC747238EAA697E1ECF8BC932C0" name="us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,470</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1612-wk-Fact-8B882D24DB21D4F7A8231ECF8BC83CAB" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">650</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1632-wk-Fact-1E3CA7EF65AC77D7A5C91ECF8BAD1B06" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">7,781</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1652-wk-Fact-5EE815580290C8D1D0491ECF8BBF8F0F" name="us-gaap:DeferredForeignIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">5,393</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:top;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred income tax provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1675-wk-Fact-9AB50BC21005C1050E531ECF8BC43CB7" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">11,778</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1695-wk-Fact-7128C4DEF2402505AAE31ECF8BCDA54C" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">11,405</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e1715-wk-Fact-68A7CADF224422F0C8431ECF8BC27E0C" name="us-gaap:DeferredIncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">1,199</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total income tax provision</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1742-wk-Fact-80B82630C160508D82E51ECF8C24901F" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,533</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1761-wk-Fact-A7276CBBF0428CED119F1ECF8C229C9C" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,630</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1780-wk-Fact-BDD0129398F515CA82BC1ECF8C10B80C" name="us-gaap:IncomeTaxExpenseBenefit" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,402</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code. Effective for the Company's 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e1801-wk-Fact-D8BD0CA8462D2E9ACCBF1ECF8BCDC54B" name="irbt:TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" contextRef="FD2017Q4QTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">11.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> in the fourth quarter of 2017 which included a provisional amount of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e1805-wk-Fact-3E1DCB798E6037D3B0FB1ECF8BCF155C" name="us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit" contextRef="FD2017Q4QTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">8.9</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e1809-wk-Fact-96DF8E429984DE25939C1ECF8BCF8BF7" name="irbt:TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" contextRef="FD2017Q4QTD" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">3.0</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and determined no material adjustments to the provisional amounts recorded were required.</span></div></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">70</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-4318045B078598AEFB0D1ECF8C48B142-1" continuedAt="TextSelection-4318045B078598AEFB0D1ECF8C48B142-2"><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" id="TextSelection-B71EBD71019E02B0B8901ECF8C48EF87-0-wk-Fact-1771088A211D6596FE1A1ECF8BD03F10" escape="true"><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The reconciliation of statutory federal income tax to actual tax expense is as follows (in thousands):</span></div><div style="line-height:120%;padding-top:10px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:62%;"></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:10%;"></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="text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Statutory federal income tax</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1977-wk-Fact-7ACB55912C518C74C0BF1ECF8BED0267" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,755</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e1996-wk-Fact-D5FB51E40BEA41C012931ECF8C240925" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,812</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2015-wk-Fact-CDD5C03B6056A8AC364E1ECF8BC21C61" name="us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">26,728</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State taxes (net of federal benefit)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2031-wk-Fact-FCEB3595E33857A0CC761ECF8C17B8BF" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,999</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2050-wk-Fact-01510337AEE2D9E645DB1ECF8BEEB821" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,312</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2069-wk-Fact-2F0D805F1A7F90D3CF9B1ECF8BE741A8" name="us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,089</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Federal and state credits</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2090-wk-Fact-7049D4D5E95BD998EE3A1ECF8BEFF64C" name="us-gaap:IncomeTaxReconciliationTaxCredits" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,152</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2110-wk-Fact-08B48B2C1DAAB882701A1ECF8BF448AF" name="us-gaap:IncomeTaxReconciliationTaxCredits" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,638</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2130-wk-Fact-A7A17D6FB506F6584B1C1ECF8BEEA10E" name="us-gaap:IncomeTaxReconciliationTaxCredits" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,486</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic production activities deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2152-wk-Fact-77F77D5669A7AEE8EAC81ECF8BEFA54B" name="us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2171-wk-Fact-3FE04AC18461F49003841ECF8BF1E9D2" name="us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2190-wk-Fact-D2824D46DCBC077BF1251ECF8BEA3E9D" name="us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,528</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Excess tax benefits relating to stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2212-wk-Fact-6D3AAC495016C83C66771ECF8BF6E997" name="irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,468</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2232-wk-Fact-7F810A25AD556BE70DFA1ECF8BEF9DF9" name="irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">6,529</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2252-wk-Fact-EB858724EF64AD4964EB1ECF8BF7BA40" name="irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,709</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Tax Cuts and Jobs Act of 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2274-wk-Fact-7C4F4D7286EC76617F601ECF8C13B0B7" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2293-wk-Fact-DB98350665C9C88FCF191ECF8C19FAF6" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,127</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2312-wk-Fact-7634F4D3595A0AD4DF531ECF8BC7F74B" name="us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">11,861</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign-derived intangible income deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2333-wk-Fact-E997C9002753816F30C31ECF8BC685B0" name="irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">4,180</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2353-wk-Fact-143F820FD15E4A74C13F1ECF8BEAF482" name="irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">2,678</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2373-wk-Fact-AA152CCFB987ECCFD0B81ECF8C1DFD75" name="irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">EMEA business restructuring</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2394-wk-Fact-C7F48DAA70EB9504E6881ECF8BE855F2" name="irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2413-wk-Fact-D1C29F260C3A29400B481ECF8C17003D" name="irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,292</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2432-wk-Fact-CE73BBAA676608680D6E1ECF8C213049" name="irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Executive compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2453-wk-Fact-7544B05DBD56650233322F91B989F334" name="irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,081</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2472-wk-Fact-4F8085C907EA5A79F54D2F91EC9F903F" name="irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">745</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2491-wk-Fact-4C7580C6F2FCC13E373F2F920BCDCE61" name="irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,354</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tax impact of foreign earnings</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2513-wk-Fact-3804E3F507C115ECBE6F2F92F1C59E46" name="irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,986</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2532-wk-Fact-601C79E9D8BA84A959572F93A914F323" name="irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,336</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e2551-wk-Fact-1075150540DF0B2C24682F93C8C9A11A" name="irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" sign="-" format="ixt:numdotdecimal">636</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Change in valuation allowance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2573-wk-Fact-0BD56AFEB2619B4F0F0D1ECF8BC42A9E" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,678</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2592-wk-Fact-71B7917DE542EA3548891ECF8BCE9894" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2611-wk-Fact-F1EF5BEC6280738118C31ECF8BBF743C" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">800</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2632-wk-Fact-D24B7100F78062F780FF1ECF8BF4F37F" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">834</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2651-wk-Fact-6D6767E57035EC231B7A1ECF8C0FB177" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,503</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2670-wk-Fact-BD22B1484DCEBF3FCBC71ECF8BF96BC0" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">929</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2696-wk-Fact-2B8942D01EF0D517F9501ECF8C1AA391" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,533</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2715-wk-Fact-956BC9E02711CB3039A21ECF8BE85416" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,630</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2734-wk-Fact-DB4D2F906713D45507781ECF8BE785B7" name="us-gaap:IncomeTaxReconciliationNondeductibleExpense" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,402</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" id="TextSelection-D930F00F5ED16F05693F1ECF8C488C14-0-wk-Fact-48245D8C5B1D46990ED91ECF8BCFB019" escape="true"><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of net deferred tax assets were as follows (in thousands):</span></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:75%;"></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: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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue reserves</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2870-wk-Fact-A0823F3834D491D2ABDB1ECF8BC8F88A" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">21,355</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2889-wk-Fact-6EF974F20906043EAECF1ECF8BAF9D99" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,420</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accruals and other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2904-wk-Fact-7C1A13500C40758E11EB15DD88D36230" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,225</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2923-wk-Fact-359F12663FB730EC048715DDAAE4B5FD" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,844</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2943-wk-Fact-ABC682F952AF1736DCC315DB5896F41C" name="irbt:DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">14,117</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2962-wk-Fact-07306986B4A4A16E57C415DB852CAE76" name="irbt:DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tax credits and net operating loss carryforwards</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e2982-wk-Fact-AAB0AF96B87F36AF16691ECF8BC86F2D" name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwards" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">8,814</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3001-wk-Fact-253A4A136DDA8CFB94691ECF8BC861A4" name="us-gaap:DeferredTaxAssetsTaxCreditCarryforwards" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,781</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3021-wk-Fact-93890AB761CD4261EC101ECF8BB7161C" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,981</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3040-wk-Fact-F9DD6E154B1F6B680EAE1ECF8BB63210" name="us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,975</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3060-wk-Fact-C94106FE55EE6F637CA815DE06F1F230" name="us-gaap:DeferredTaxAssetsOther" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,068</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3079-wk-Fact-25BF2AD61B5A6174447B15DE1E513D18" name="us-gaap:DeferredTaxAssetsOther" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,087</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3099-wk-Fact-0727201B933D7000F7B21ECF8BC02378" name="us-gaap:DeferredTaxAssetsGross" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">62,560</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3118-wk-Fact-0F33C2B98D4F478BD3071ECF8BB9C9A7" name="us-gaap:DeferredTaxAssetsGross" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">42,107</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Valuation allowance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e3138-wk-Fact-663448AC6EEF6076C5581ECF8BA444D4" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,826</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e3158-wk-Fact-A0272EC4D66D0520E99C1ECF8BC187B6" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,148</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Total deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3179-wk-Fact-F54E4B97EA85EDA163201ECF8BC2D3B5" name="us-gaap:DeferredTaxAssetsNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">58,734</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3198-wk-Fact-310DA61B6D95CBFC736F1ECF8BB9B156" name="us-gaap:DeferredTaxAssetsNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,959</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3260-wk-Fact-49951890A72D185936061ECF8BB4CFBC" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">3,838</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3279-wk-Fact-C6F0EAB5918204801F8F1ECF8BB60E2A" name="us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,317</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease right-of-use assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3299-wk-Fact-CC009C342C26AEED78A415DC79E4B9E9" name="us-gaap:DeferredTaxLiabilitiesLeasingArrangements" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">13,249</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3318-wk-Fact-7D28004DF41602CBE3E415DCB17BC711" name="us-gaap:DeferredTaxLiabilitiesLeasingArrangements" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3338-wk-Fact-210E1295335B5B42C2991ECF8BC30BFB" name="us-gaap:DeferredTaxLiabilitiesOther" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">768</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3357-wk-Fact-37826A24C8E6C4C2D75D1ECF8BC52E54" name="us-gaap:DeferredTaxLiabilitiesOther" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">668</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3377-wk-Fact-DBCEC5E450E0F0C20D501ECF8BCBFC23" name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">17,855</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3396-wk-Fact-1A74063B5A13BFB6F29A1ECF8BB46D4F" name="us-gaap:DeferredIncomeTaxLiabilities" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,985</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3421-wk-Fact-A1515ABE8F7BD204CC501ECF8BBAC807" name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">40,879</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3440-wk-Fact-AF7B90136B19FBCB428F1ECF8BBBE3DF" name="us-gaap:DeferredTaxAssetsLiabilitiesNet" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">32,974</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> The Company intends to continue to invest all of its unremitted foreign earnings, as well as the capital in its foreign subsidiaries, indefinitely outside of the U.S. At December 28, 2019, the Company has unremitted foreign earnings and any unrecognized deferred tax liability on these unremitted earnings would be immaterial.</span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has federal net operating loss carryforwards of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e3461-wk-Fact-7D10A4724F6B73F9D4693AF18AF8A7E6" name="us-gaap:OperatingLossCarryforwards" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> as of December 28, 2019. The Company had foreign net operating loss carryforwards of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e3465-wk-Fact-59A5871D93A6911C915F1ECF8BD42F58" name="us-gaap:OperatingLossCarryforwards" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">3.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> as of December 29, 2018 that were fully utilized during tax year ended December 28, 2019. The Company has state research and development credit carryforwards of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e3469-wk-Fact-27531F07AC0EEC4F7CBC1ECF8BD7B58B" name="us-gaap:TaxCreditCarryforwardAmount" contextRef="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">13.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e3473-wk-Fact-98C7E36C3FC24D1D9FEB1ECF8BCC73F8" name="us-gaap:TaxCreditCarryforwardAmount" contextRef="FI2018Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">10.7</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> as of December 28, 2019 and December 29, 2018, respectively, which expire from 2028 to 2034. Under the Internal Revenue Code and state law, certain substantial changes in the Company&#8217;s ownership could result in an annual limitation on the amount of these tax carryforwards which can be utilized in future years. As of December 28, 2019, December 29, 2018 and December 30, 2017, the Company had a valuation allowance of </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e3477-wk-Fact-6E9281150BF1BFDAA0841ECF8B95D50C" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">3.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e3482-wk-Fact-21156A7A99DFAA8E9A881ECF8B91B85E" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2018Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">1.1</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e3486-wk-Fact-1D479B52ED490C19B1AE1ECF8B9287BB" name="us-gaap:DeferredTaxAssetsValuationAllowance" contextRef="FI2017Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">0.8</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, for state research </span></div></ix:continuation><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">71</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-4318045B078598AEFB0D1ECF8C48B142-2"><div style="line-height:120%;padding-top:10px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">and development credit carryforwards and certain foreign deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.</span></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" id="TextSelection-B762F42A65AFD520126A1ECF8C48BBB8-0-wk-Fact-45516FE3A07EE9B5BFBC1ECF8BD04A0B" escape="true"><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A summary of the Company&#8217;s adjustments to its gross unrecognized tax benefits in the current year is as follows (in thousands):</span></div><div style="line-height:120%;padding-top:10px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:62%;"></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:10%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3656-wk-Fact-7E9961EA199855A670691ECF8BF44C14" name="us-gaap:UnrecognizedTaxBenefits" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,119</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3675-wk-Fact-B822AC47C6B129AFAE061ECF8BF97278" name="us-gaap:UnrecognizedTaxBenefits" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,590</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3694-wk-Fact-5F5D1759130572DF51FD1ECF8BF728A9" name="us-gaap:UnrecognizedTaxBenefits" contextRef="FI2016Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">5,146</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase for tax positions related to the current year</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3710-wk-Fact-B9A81DE31BCBA349AF231ECF8C180ADA" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">770</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3729-wk-Fact-3069C37D2E83879A5C241ECF8BF5B9D4" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,891</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3748-wk-Fact-779287A3DF88595CE5CB1ECF8C2462F9" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">580</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase for tax positions related to acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3769-wk-Fact-28DDE8750EACD44E18D01ECF8C265076" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3788-wk-Fact-EF457ECB6F2E611E9BF31ECF8C1C81C4" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,493</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3807-wk-Fact-CFB2E61B5782430290C91ECF8C1F5EFF" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase (decrease) for tax positions related to prior years</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e3828-wk-Fact-62F7C74ABF06BD076A501ECF8BF404E9" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">768</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3848-wk-Fact-ADD78ACA06320923288E1ECF8C20DAE3" name="us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">407</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e3867-wk-Fact-D924E0D787128B93AE1E1ECF8BF3BEB2" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">523</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Decrease for settlements with applicable taxing authorities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3889-wk-Fact-7DFBD9867D71CACB5EE21ECF8C236C7D" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e3908-wk-Fact-6F9C399B3D1891D3A3281ECF8C202ACB" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">2,262</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3928-wk-Fact-6E6195119539E7812CBD1ECF8C29B213" name="us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Decrease for lapses of statute of limitations</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3949-wk-Fact-C6F376ED500CEEC952681ECF8BF53F06" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e3968-wk-Fact-78AA1076EFE9A65B81281ECF8C1A6DE0" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:zerodash">&#8212;</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(<ix:nonFraction id="d27614797e3987-wk-Fact-0F64F964EA7719A3B5041ECF8C0ED290" name="us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">613</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e4014-wk-Fact-B3D43BDE4BD985492D571ECF8BF44CFD" name="us-gaap:UnrecognizedTaxBenefits" contextRef="FI2019Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,121</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e4033-wk-Fact-7E9961EA199855A670691ECF8BF44C14" name="us-gaap:UnrecognizedTaxBenefits" contextRef="FI2018Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,119</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27614797e4052-wk-Fact-B822AC47C6B129AFAE061ECF8BF97278" name="us-gaap:UnrecognizedTaxBenefits" contextRef="FI2017Q4" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">4,590</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During the fourth quarter of 2018, the Company finalized the purchase accounting related to its acquisition of Robopolis and recorded a $1.5 million adjustment for uncertain pre-acquisition income tax positions in various taxing jurisdictions against goodwill. In addition, the Company recorded a charge of $2.3 million for estimated taxes associated with a restructuring of the EMEA business during fiscal 2018. The Company accrues interest and, if applicable, penalties for any uncertain tax positions as a component of income tax expense.  As of December 28, 2019, December&#160;29, 2018 and December&#160;30, 2017 there were no material accrued interest or penalties.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company is subject to taxation in the United States (federal and state) and foreign jurisdictions.  The statute of limitations for examinations by the Internal Revenue Service (the "IRS") and state tax authorities is closed for fiscal years prior to 2014.  Federal and state carryforward attributes that were generated prior to fiscal 2014 may still be adjusted upon examination by the federal or state tax authorities if they either have been or will be used in a period for which the statute of limitations is still open.  The Company is currently under examination by the IRS for the years 2014 and 2015. There are other ongoing audits in various other jurisdictions that are not material to the Company's financial statements.&#160; The Company regularly assesses the likelihood of adverse outcomes resulting from these examinations to determine the adequacy of its provision for income taxes. The Company continues to monitor the progress of ongoing discussions with tax authorities and the effect, if any, of the expected expiration of the statute of limitations in various taxing jurisdictions.&#160; The Company believes that an adequate provision has been made for any adjustments that may result from tax examinations. However, the outcome of tax audits cannot be predicted with certainty. If any issues addressed in the Company's tax audits are resolved in a manner not consistent with management's expectations, the Company could be required to adjust its provision for income taxes in the period such resolution occurs. Although the timing of resolution, settlement, and closure of audits is not certain, it is reasonably possible that certain U.S. federal and non-U.S. tax audits may be concluded within the next 12 months, which could increase or decrease the balance of the Company's gross unrecognized tax benefits. The Company does not expect a significant change in the amount of unrecognized tax benefits within the next 12 months. If all of the Company's unrecognized tax benefits as of December&#160;28, 2019 were to become recognizable in the future, it would record a </span><span style="font-family:inherit;font-size:10pt;"><span>$<ix:nonFraction id="d27614797e4069-wk-Fact-BE6479B75A52C386EE4E1ECF8BD28173" name="us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" contextRef="FI2019Q4" unitRef="usd" decimals="-5" scale="6" format="ixt:numdotdecimal">7.4</ix:nonFraction> million</span></span><span style="font-family:inherit;font-size:10pt;"> benefit, inclusive of interest, to the income tax provision.</span></div></ix:continuation><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s2377C7C3158851D88E2A4118F5EE05D7"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:SegmentReportingDisclosureTextBlock" id="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-0-wk-Fact-5AD86A518AA1A75DA0BC1ECF8BD758A9" continuedAt="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-1" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">18.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Industry Segment, Geographic Information and Significant Customers</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company operates as&#160;one&#160;operating segment. The Company's consumer robots products are offered to consumers through distributor and retail sales channels, as well as its on-line stores.</span></div><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div><div style="line-height:120%;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Geographic Information</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, sales to non-U.S.&#160;customers accounted for </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e670-wk-Fact-2F223AC55AE379BDD5831ECF8BC74407" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">50.3</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e674-wk-Fact-5ECC70D1F86436601BA11ECF8BB8B9B9" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">48.7</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e679-wk-Fact-DF7FB6871816F990AD691ECF8BCEDF7D" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">48.8</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> of total revenue, respectively. </span></div></ix:nonNumeric><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">72</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;text-align:left;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;text-decoration:none;" href="#sE6F577D4997B52BA88B7BB44D7C061B7"><span style="font-family:inherit;font-size:10pt;text-decoration:none;">Table of Contents</span></a></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</span></div><div style="line-height:120%;padding-top:6px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS &#8212; (Continued)</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></div><div><br/></div><ix:continuation id="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-1" continuedAt="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-2"><ix:nonNumeric contextRef="FD2019Q4YTD" name="irbt:ScheduleofrevenuebygeographyTableTextBlock" id="TextSelection-21BE7C40DE263A7408A330CBE48060CD-0-wk-Fact-D3CCA80E5BA4BCBDFB6230CF9E3FAD34" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about revenue by geographical region (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"></td></tr><tr><td style="width:41%;"></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:17%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:1%;"></td><td style="width:17%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e783-wk-Fact-593E1A7611D96CECD52230D0411517E6" name="us-gaap:Revenues" contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">603,618</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e802-wk-Fact-DBC380F10E10A0C6871030F6AF57A77E" name="us-gaap:Revenues" contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">560,995</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e821-wk-Fact-E56016A9930FCDC0579330F6D203A593" name="us-gaap:Revenues" contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">452,563</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">International</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e837-wk-Fact-74510CEBA61E15E23DAF30F76CE9020B" name="us-gaap:Revenues" contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">610,392</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e856-wk-Fact-75AD1D224BBBAE13325630FA903133A7" name="us-gaap:Revenues" contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">531,589</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e875-wk-Fact-9E06E589D672A0C48EC030FAB83814BA" name="us-gaap:Revenues" contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">431,348</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e901-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49" name="us-gaap:Revenues" contextRef="FD2019Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,214,010</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e920-wk-Fact-989EE34444750D4496461ECF8BCC77EC" name="us-gaap:Revenues" contextRef="FD2018Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">1,092,584</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e939-wk-Fact-04C530ADA4DB9ABBE46B1ECF8C290722" name="us-gaap:Revenues" contextRef="FD2017Q4YTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">883,911</ix:nonFraction></span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Significant Customers</span></div></ix:continuation><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><ix:continuation id="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-2" continuedAt="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-3"><span style="font-family:inherit;font-size:10pt;">For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, the Company generated </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e966-wk-Fact-ED14B6DDEE939662FF511ECF8BA09D9E" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">21.3</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e970-wk-Fact-32DB3A8BE91F98C342C21ECF8BFF3D7A" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">17.3</ix:nonFraction>%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27610884e975-wk-Fact-479A5FCB40C7377A4B3820EDC5D6089C" name="us-gaap:ConcentrationRiskPercentage1" contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember" unitRef="number" decimals="3" scale="-2" format="ixt:numdotdecimal">13.5</ix:nonFraction>%</span></span></ix:continuation><span style="font-family:inherit;font-size:10pt;"><ix:continuation id="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-3">, respectively, of total revenue from one of its retailers (Amazon), respectively.</ix:continuation> </span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s1EC023D9C4AB595EAC815EFA3A22409C"></a></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:QuarterlyFinancialInformationTextBlock" id="TextSelection-C258EAB9A2B410633DE31ECF8C48B13F-0-wk-Fact-9DCF9D561DF52013D0D01ECF8BD9DFE6" escape="true"><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="2"></td></tr><tr><td style="width:6%;"></td><td style="width:94%;"></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">19.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Quarterly Information (Unaudited)</span></div></td></tr></table></div></div><ix:nonNumeric contextRef="FD2019Q4YTD" name="us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock" id="TextSelection-EFF1965F407EF1133ABE1ECF8C4848E5-0-wk-Fact-A47F03AF1FA0202BB7791ECF8BDAF29E" escape="true"><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following information has been derived from unaudited consolidated financial statements that, in the opinion of management, include all recurring adjustments necessary for a fair statement of such information (in thousands, except per share amounts):</span></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="32"></td></tr><tr><td style="width:11%;"></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: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: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: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></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="31" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Quarter Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">September&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">June&#160;29, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">March&#160;30, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">September&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">June&#160;30, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">March&#160;31, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1023-wk-Fact-33939C15F988469E998A1ECF8BD36AC4" name="us-gaap:Revenues" contextRef="FD2019Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">426,778</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1042-wk-Fact-CE36392EB5507CFA8A491ECF8C1E9CE2" name="us-gaap:Revenues" contextRef="FD2019Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">289,399</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1061-wk-Fact-AEDF1775840BCEB94DB31ECF8BEE0B30" name="us-gaap:Revenues" contextRef="FD2019Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">260,172</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1081-wk-Fact-EAFE20467863A3675D6D1ECF8BCB6FC1" name="us-gaap:Revenues" contextRef="FD2019Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">237,661</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1100-wk-Fact-0FF94AFCDBBE7652F99B1ECF8BD7C652" name="us-gaap:Revenues" contextRef="FD2018Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">384,665</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1120-wk-Fact-47BE5DC4ED4033777C041ECF8BE4408A" name="us-gaap:Revenues" contextRef="FD2018Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">264,534</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1139-wk-Fact-77FEA789554AA511BED21ECF8BC99AB0" name="us-gaap:Revenues" contextRef="FD2018Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">226,317</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1158-wk-Fact-9FB1F19C3E2B29089E301ECF8BD5774E" name="us-gaap:Revenues" contextRef="FD2018Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">217,068</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross profit</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1173-wk-Fact-68A2D6F3659849D897AB1ECF8C1F2169" name="us-gaap:GrossProfit" contextRef="FD2019Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">169,370</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1192-wk-Fact-4C384144092DCF8240291ECF8BF6A520" name="us-gaap:GrossProfit" contextRef="FD2019Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">136,841</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1211-wk-Fact-E1F9C915C2DB3A0559431ECF8BCDCEB3" name="us-gaap:GrossProfit" contextRef="FD2019Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">118,170</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1231-wk-Fact-BA93030639C2581EDF381ECF8BF26F9C" name="us-gaap:GrossProfit" contextRef="FD2019Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">119,546</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1250-wk-Fact-E19E98979AD2AE063C3B1ECF8C288ADB" name="us-gaap:GrossProfit" contextRef="FD2018Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">186,511</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1269-wk-Fact-32A4F440133A9123AA061ECF8BDD0AB5" name="us-gaap:GrossProfit" contextRef="FD2018Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">135,206</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1289-wk-Fact-6C7AEA9B75E8FDA2F5BC1ECF8BD5D12E" name="us-gaap:GrossProfit" contextRef="FD2018Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">117,926</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1308-wk-Fact-2EEE5BF145E6B0914E011ECF8BD09822" name="us-gaap:GrossProfit" contextRef="FD2018Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">115,785</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1328-wk-Fact-DA1663B149DFA9F9744E1ECF8BE49CCC" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,041</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1347-wk-Fact-FC819945EB24699411071ECF8BD1BCF7" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">35,532</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1366-wk-Fact-864629AD0CB4B41C051C1ECF8BDAB912" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">7,207</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1386-wk-Fact-C9F0452602097046F20C1ECF8BCED98B" name="us-gaap:NetIncomeLoss" contextRef="FD2019Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">22,520</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1405-wk-Fact-4BD4ED849F72227247651ECF8BC79C06" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q4QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">25,191</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1424-wk-Fact-24758557CA1D9E4CEC6D1ECF8BD13005" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q3QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">31,929</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1444-wk-Fact-C89C4E52A4C0FB4B63D41ECF8C28394B" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q2QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">10,471</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1463-wk-Fact-128D818F215DA22AF4881ECF8BD98887" name="us-gaap:NetIncomeLoss" contextRef="FD2018Q1QTD" unitRef="usd" decimals="-3" scale="3" format="ixt:numdotdecimal">20,401</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted earnings per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1488-wk-Fact-39E432052824D5B1803C1ECF8BDF33E2" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q4QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.70</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1507-wk-Fact-80403BDF25C41DA0CEB91ECF8BD9CF0E" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q3QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.24</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1526-wk-Fact-CD7A546D2AF73FBF479C1ECF8BD47D12" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q2QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.25</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1546-wk-Fact-049782D0C6014507732C1ECF8BEF8A92" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2019Q1QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.78</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1565-wk-Fact-6BCFD85FC6611635B3CA1ECF8BE1FE69" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q4QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.88</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1585-wk-Fact-CE771F6D4BEE0EF046741ECF8C2588DD" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q3QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">1.12</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1604-wk-Fact-C962F42F660EE26BEDF81ECF8BC49E35" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q2QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.37</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span><ix:nonFraction id="d27615977e1623-wk-Fact-D5E0ECD9AF9A783C721A1ECF8BDF08CC" name="us-gaap:EarningsPerShareDiluted" contextRef="FD2018Q1QTD" unitRef="usdPerShare" decimals="2" scale="0" format="ixt:numdotdecimal">0.71</ix:nonFraction></span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div></ix:nonNumeric></ix:nonNumeric><div style="line-height:120%;padding-top:4px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">73</span></div></div><hr style="page-break-after:always"></hr><div><a id="s6EF72555CAFD5BD9BD0F70C5B442141E"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;9.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">None.</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="sD122AC8DEA3052F09C4524CA4B432150"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;9A.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">CONTROLS AND PROCEDURES</span></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Evaluation of disclosure controls and procedures.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As required by Rule&#160;13a-15(b) under the Exchange Act, we have carried out an evaluation, under the supervision and with the participation of our management, including our Chief Executive Officer ("CEO") and our Chief Financial Officer ("CFO"), of the effectiveness, as of the end of the period covered by this report, of the design and operation of our "disclosure controls and procedures" as defined in Rule&#160;13a-15(e) promulgated by the SEC under the Exchange Act. Based upon that evaluation, our CEO and our CFO concluded that our disclosure controls and procedures, as of the end of such period, were adequate and effective to ensure that information required to be disclosed by us in the reports that we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the SEC&#8217;s rules and forms, and that such information was accumulated and communicated to management, as appropriate, to allow timely decisions regarding required disclosure.</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Management&#8217;s Report on Internal Control Over Financial Reporting</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The management of the Company is responsible for establishing and maintaining adequate internal control over financial reporting.  Internal control over financial reporting is defined in Rules&#160;13a-15(f) and 15d-15(f) promulgated under the Exchange Act as a process designed by, or under the supervision of, the Company&#8217;s principal executive and principal financial officers and effected by the Company&#8217;s board of directors, management and other personnel, 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 and includes those policies and procedures that:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Pertain to the maintenance of records that in reasonable detail accurately and fairly reflect the transactions and dispositions of the assets of the Company;</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the Company are being made only in accordance with authorizations of management and directors of the Company;&#160;and</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:4px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:36px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of the Company&#8217;s assets that could have a material effect on the financial statements.</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Under the supervision and with the participation of management, including our principal executive and financial officers, we assessed the Company&#8217;s internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, based on criteria for effective internal control over financial reporting established in </span><span style="font-family:inherit;font-size:10pt;font-style:italic;">Internal Control&#160;&#8212; Integrated Framework (2013)</span><span style="font-family:inherit;font-size:10pt;">, issued by the Committee of Sponsoring Organizations of the Treadway Commission. Based on this assessment, management concluded that the Company maintained effective internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> based on the specified criteria.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The effectiveness of the Company&#8217;s internal control over financial reporting as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> has been audited by PricewaterhouseCoopers LLP, an independent registered public accounting firm, as stated in their report which is included herein.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Changes in Internal Control Over Financial Reporting</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During the quarter ended December 28, 2019, there were no changes in our internal control over financial reporting that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">74</span></div></div><hr style="page-break-after:always"></hr><div><a id="s00BC0E7DE5035ABFAA819096DFA01B04"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;9B.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;OTHER INFORMATION</span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">10b5-1 Trading Plans</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Our policy governing transactions in our securities by our directors, officers, and employees permits our officers, directors, funds affiliated with our directors, and certain other persons to enter into trading plans complying with Rule 10b5-l under the Exchange Act. We have been advised that certain of our officers and directors (including Colin Angle, Chief Executive Officer, Russell Campanello, EVP, Human Resources and Corporate Communications, Timothy Saeger, EVP and Chief R&amp;D Officer, Glen Weinstein, EVP and Chief Legal Officer, as well as Mohamad Ali, Deborah Ellinger, Andrew Miller and Michelle Stacy, each a director of the Company) have entered into trading plans (each a "Plan" and collectively, the "Plans") covering periods after the date of this Annual Report on Form 10-K in accordance with Rule 10b5-l and our policy governing transactions in our securities. Generally, under these trading plans, the individual relinquishes control over the transactions once the trading plan is put into place. Accordingly, sales under these plans may occur at any time, including possibly before, simultaneously with, or immediately after significant events involving the Company.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">We anticipate that, as permitted by Rule 10b5-l and our policy governing transactions in our securities, some or all of our officers, directors and employees may establish trading plans in the future. We intend to disclose the names of our executive officers and directors who establish a trading plan in compliance with Rule 10b5-l and the requirements of our policy governing transactions in our securities in our future quarterly and annual reports on Form 10-Q and 10-K filed with the Securities and Exchange Commission. We undertake no obligation to update or revise the information provided herein. </span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><a id="sE076E9D8DA1A54D3AEE4BD2A4DAEFB4D"></a></div><div style="line-height:120%;padding-top:8px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">PART&#160;III</span></div><div><a id="sF459F9ABE18852169DE87E1BAEC24FA2"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;10.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The information required under this item is incorporated herein by reference to the Company&#8217;s definitive proxy statement pursuant to Regulation&#160;14A, which proxy statement will be filed with the Securities and Exchange Commission not later than 120&#160;days after the close of the Company&#8217;s fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div><a id="s4A746090060552C78C7052E576B61DAD"></a></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;11.&#160;&#160;&#160;&#160;</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">EXECUTIVE COMPENSATION</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The information required under this item is incorporated herein by reference to the Company&#8217;s definitive proxy statement pursuant to Regulation&#160;14A, which proxy statement will be filed with the Securities and Exchange Commission not later than 120&#160;days after the close of the Company&#8217;s fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s5F89FF37CB055AB9945130C2B8377D79"></a></div><div style="line-height:120%;padding-left:72px;text-indent:-72px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:72px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;12.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The information required under this item is incorporated herein by reference to the Company&#8217;s definitive proxy statement pursuant to Regulation&#160;14A, which proxy statement will be filed with the Securities and Exchange Commission not later than 120&#160;days after the close of the Company&#8217;s fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div><a id="s329BFB175F0B5FD4B014F4AF087158B1"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;13</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">.&#160;&#160;&#160;&#160;CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The information required under this item is incorporated herein by reference to the Company&#8217;s definitive proxy statement pursuant to Regulation&#160;14A, which proxy statement will be filed with the Securities and Exchange Commission not later than 120&#160;days after the close of the Company&#8217;s fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div><a id="sCD4F354D17E6583AA3F1F0B3B4BA02A6"></a></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;14.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;PRINCIPAL ACCOUNTING FEES AND SERVICES</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The information required under this item is incorporated herein by reference to the Company&#8217;s definitive proxy statement pursuant to Regulation&#160;14A, which proxy statement will be filed with the Securities and Exchange Commission not later than 120&#160;days after the close of the Company&#8217;s fiscal year ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">75</span></div></div><hr style="page-break-after:always"></hr><div><a id="s1F03A11F8BF75C8584FFC9B52E0F440B"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;padding-top:24px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">PART IV</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div><a id="s3A702ABC43E75A549F4B25457E8F643E"></a></div><div style="line-height:120%;-sec-extract:summary;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;15.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;EXHIBITS, FINANCIAL STATEMENT SCHEDULES</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:48px;padding-top:6px;text-indent:12px;"><span style="padding-top:6px;font-family:inherit;font-size:10pt;font-weight:bold;padding-right:36px;">(a)</span><span style="font-family:inherit;font-size:10pt;">The following are filed as part of this Annual Report on Form&#160;10-K:</span></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">1.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Financial Statements</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following consolidated financial statements are included in Item&#160;8:</span></div><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Report of Independent Registered Public Accounting Firm</span></div><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Balance Sheets at </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Income for the Years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Comprehensive Income for the Years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Stockholders&#8217; Equity for the Years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Consolidated Statements of Cash Flows for the Years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;padding-top:6px;padding-left:60px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Notes to Consolidated Financial Statements</span></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">2.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Financial Statement Schedules</span></div></td></tr></table><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">All other schedules have been omitted since the required information is not present, or not present in amounts sufficient to require submission of the schedule, or because the information required is included in the consolidated financial statements or the Notes thereto.</span></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:60px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">3.</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Exhibits&#160;&#8212; See item&#160;15(b) of this report below</span></div></td></tr></table><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">(b)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Exhibits</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following exhibits are filed as part of and incorporated by reference into this Annual Report:</span></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.0234375%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:90%;"></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Exhibit<br/></span><span style="font-family:inherit;font-size:8pt;font-weight:bold;text-decoration:underline;">Number</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;text-decoration:underline;">Description</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916717000033/ex21.htm"><span style="font-family:inherit;font-size:10pt;">2.1</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Share Purchase Agreement, dated as of July 25, 2017, by and among the Registrant, iRobot UK Ltd., Robopolis SAS, the shareholders of Robopolis SAS named therein, and the Shareholders&#8217; Representative named therein (filed as Exhibit 2.1 to the Registrant&#8217;s Current Report on Form 8-K filed on July 26, 2017 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095013505005352/b55709a1exv3w2.txt"><span style="font-family:inherit;font-size:10pt;">3.1(1)</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Form of Second Amended and Restated Certificate of Incorporation of the Registrant dated November&#160;15, 2005</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916716000066/exhibit31-amendedandrestat.htm"><span style="font-family:inherit;font-size:10pt;">3.2</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Amended and Restated By-laws of the Registrant (filed as Exhibit 3.1 to the Registrant's Current Report on Form 8-K filed on March 9, 2016 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095013505005900/b55709a4exv4w1.txt"><span style="font-family:inherit;font-size:10pt;">4.1(1)</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Specimen Stock Certificate for shares of the Registrant&#8217;s Common Stock</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="irbt-12282019x10kex42.htm"><span style="font-family:inherit;font-size:10pt;">4.2*</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Description of the Registrant's securities registered under Section 12 of the Securities Exchange Act of 1934</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095013505005611/b55709a2exv10w2.txt"><span style="font-family:inherit;font-size:10pt;">10.1&#8224;(1)</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Form of Indemnification Agreement between the Registrant and its Directors and Executive Officers</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095012310101616/b82922exv10w1.htm"><span style="font-family:inherit;font-size:10pt;">10.2&#8224;</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Form of Executive Agreement between the Registrant and certain executive officers of the Registrant, as amended (filed as Exhibit&#160;10.1 to the Registrant&#8217;s Quarterly Report on Form&#160;10-Q for the quarter ended October&#160;2, 2010 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095013505005770/b55709a3exv10w10.txt"><span style="font-family:inherit;font-size:10pt;">10.3&#8224;(1)</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Employment Agreement between the Registrant and Colin Angle, dated as of January&#160;1, 1997</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095012309010336/b75717irexv10w1.txt"><span style="font-family:inherit;font-size:10pt;">10.4&#8224;</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">2005 Stock Option and Incentive Plan, as amended, and forms of agreements thereunder (filed as Exhibit&#160;10.1 to the Registrant&#8217;s Current Report on Form&#160;8-K filed on June&#160;2, 2009 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095013508001149/b68138icexv10w19.htm"><span style="font-family:inherit;font-size:10pt;">10.5&#8224;</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Non-Employee Directors&#8217; Deferred Compensation Program, as amended (filed as Exhibit&#160;10.19 to the Registrant&#8217;s Annual Report on Form&#160;10-K for the year ended December&#160;29, 2007 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916718000004/irbtexhibit106123017.htm"><span style="font-family:inherit;font-size:10pt;">10.6</span></a></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Lease Agreement between the Registrant and Boston Properties Limited Partnership for premises located at 4-18 Crosby Drive, Bedford, Massachusetts, dated as of February&#160;22, 2007 (as amended to date) (filed as Exhibit 10.6 to the Registrant&#8217;s Annual Report on Form 10-K for the year ended December 30, 2017 and incorporated by reference herein)</span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">76</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></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.0234375%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"></td></tr><tr><td style="width:9%;"></td><td style="width:1%;"></td><td style="width:90%;"></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095013508005241/b71181icexv10w3.htm"><span style="font-family:inherit;font-size:10pt;">10.7&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Form of Deferred Stock Award Agreement under the 2005 Stock Option and Incentive Plan (filed as Exhibit&#160;10.3 to the Registrant&#8217;s Quarterly Report on Form&#160;10-Q for the quarter ended June&#160;28, 2008 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000095013508005241/b71181icexv10w4.htm"><span style="font-family:inherit;font-size:10pt;">10.8&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Form of Restricted Stock Award Agreement under the 2005 Stock Option and Incentive Plan (filed as Exhibit&#160;10.4 to the Registrant&#8217;s Quarterly Report on Form&#160;10-Q for the quarter ended June&#160;28, 2008 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916718000004/irbtexhibit1010123017.htm"><span style="font-family:inherit;font-size:10pt;">10.9#</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Manufacturing Services Agreement between the Registrant and Jabil Circuit, Inc., dated as of March&#160;18, 2010 (as amended to date) (filed as Exhibit 10.10 to the Registrant&#8217;s Annual Report on Form 10-K for the year ended December 30, 2017 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916714000007/irbt-ex1015.htm"><span style="font-family:inherit;font-size:10pt;">10.10</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Amended and Restated Credit Agreement between the Registrant and Bank of America N.A., dated December 20, 2013 (filed as Exhibit 10.15 to the Registrant's Annual Report on Form 10-K for the year ended December 28, 2013 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916718000023/boa-irobotxfirstamendmentt.htm"><span style="font-family:inherit;font-size:10pt;">10.11</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">First Amendment to Amended and Restated Credit Agreement between the Registrant and Bank of America N.A., dated June 29, 2018 (filed as Exhibit 10.1 to the Registrant&#8217;s Current Report on Form 8-K filed on July 5, 2018 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916714000007/irbt-ex1016.htm"><span style="font-family:inherit;font-size:10pt;">10.12</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Amended and Restated Reimbursement Agreement between the Registrant and Bank of America N.A., dated December 20, 2013 (filed as Exhibit 10.16 to the Registrant&#8217;s Annual Report on Form 10-K for the year ended December 28, 2013 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916718000023/boa-irobotfirstamendmentto.htm"><span style="font-family:inherit;font-size:10pt;">10.13</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">First Amendment to Amended and Restated Reimbursement Agreement between the Registrant and Bank of America N.A., dated June 29, 2018 (filed as Exhibit 10.2 to the Registrant&#8217;s Current Report on Form 8-K filed on July 5, 2018 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916719000010/irbtexhibit1015122918.htm"><span style="font-family:inherit;font-size:10pt;">10.14#</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Manufacturing Services Agreement between the Registrant and Kin Yat Industrial Company Limited, dated as of January 22, 2014 (filed as Exhibit&#160;10.15 to the Registrant&#8217;s Annual Report on Form&#160;10-K for the year ended December&#160;29, 2018 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916715000041/irbtexhibit10262715.htm"><span style="font-family:inherit;font-size:10pt;">10.15&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">2015 Stock Option and Incentive Plan and forms of agreements thereunder (filed as Exhibit 10.2 to the Registrant's Quarterly Report on Form 10-Q for the quarter ended June 27, 2015 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916716000086/irbtexhibit1024216.htm"><span style="font-family:inherit;font-size:10pt;">10.16&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Form of Performance-Based Restricted Stock Unit Award Agreement under the 2015 Stock Option Incentive Plan (filed as Exhibit 10.2 to the Registrant's Quarterly Report on Form 10-Q for the quarter ended April 2, 2016 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916718000004/irbtexhibit1018123017.htm"><span style="font-family:inherit;font-size:10pt;">10.17&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">iRobot Corporation 2017 Employee Stock Purchase Plan (filed as Exhibit 10.18 to the Registrant&#8217;s Annual Report on Form 10-K for the year ended December 30, 2017 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916718000019/exhibit991_6718.htm"><span style="font-family:inherit;font-size:10pt;">10.18&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">iRobot Corporation 2018 Stock Option and Incentive Plan&#160;(filed as Exhibit 99.1 to the Registrant&#8217;s Registration Statement on&#160;Form S-8&#160;filed on June 7, 2018 (File No. 333-225482) and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="http://www.sec.gov/Archives/edgar/data/1159167/000115916719000016/irbtexhibit10133019.htm"><span style="font-family:inherit;font-size:10pt;">10.19&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">iRobot Corporation Senior Executive Incentive Compensation Plan as Amended and Restated (filed as Exhibit 10.1 to the Registrant&#8217;s Quarterly Report on Form 10-Q for the quarter ended March 30, 2019 and incorporated by reference herein)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="irbt-12282019x10kex211.htm"><span style="font-family:inherit;font-size:10pt;">21.1*</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Subsidiaries of the Registrant </span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="irbt-12282019x10kex231.htm"><span style="font-family:inherit;font-size:10pt;">23.1*</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Consent of PricewaterhouseCoopers LLP</span></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;"><span style="font-family:inherit;font-size:10pt;">24.1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Power of Attorney (incorporated by reference to the signature page of this report on Form&#160;10-K)</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="irbt-12282019x10kex311.htm"><span style="font-family:inherit;font-size:10pt;">31.1*</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Certification Pursuant to Rule&#160;13a-14(a) or Rule&#160;15d-14(a) of the Securities Exchange Act of 1934</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="irbt-12282019x10kex312.htm"><span style="font-family:inherit;font-size:10pt;">31.2*</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Certification Pursuant to Rule&#160;13a-14(a) or Rule&#160;15d-14(a) of the Securities Exchange Act of 1934</span></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;"><a style="text-decoration:underline;color:#0000FF;-sec-extract:exhibit;" href="irbt-12282019x10kex321.htm"><span style="font-family:inherit;font-size:10pt;">32.1**</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Certification Pursuant to 18&#160;U.S.C. Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002</span></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;"><span style="font-family:inherit;font-size:10pt;">101.SCH*</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Inline XBRL Taxonomy Extension Schema Document</span></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;"><span style="font-family:inherit;font-size:10pt;">101.CAL*</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Inline XBRL Taxonomy Extension Calculation Linkbase Document</span></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;"><span style="font-family:inherit;font-size:10pt;">101.LAB*</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Inline XBRL Taxonomy Extension Label Linkbase Document</span></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;"><span style="font-family:inherit;font-size:10pt;">101.PRE*</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Inline XBRL Taxonomy Extension Presentation Linkbase Document</span></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;"><span style="font-family:inherit;font-size:10pt;">101.DEF*</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Inline XBRL Taxonomy Extension Definition Linkbase Document</span></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;"><span style="font-family:inherit;font-size:10pt;">104*</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Cover Page Interactive Data File (formatted as inline XBRL with applicable taxonomy extension information contained in Exhibits 101.*)</span></div></td></tr></table></div></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:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#8224;</span></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;"><span style="font-family:inherit;font-size:10pt;">Indicates a management contract or any compensatory plan, contract or arrangement.</span></div></td></tr></table></div></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:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;">#</span></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;"><span style="font-family:inherit;font-size:10pt;">Confidential treatment requested for portions of this document.</span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">77</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></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:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;">(1)</span></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;"><span style="font-family:inherit;font-size:10pt;">Incorporated by reference herein to the exhibits to the Company&#8217;s Registration Statement on Form&#160;S-1 (File&#160;No.&#160;333-126907)</span></div></td></tr></table></div></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:5%;"></td><td style="width:95%;"></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;"><span style="font-family:inherit;font-size:10pt;">*</span></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;"><span style="font-family:inherit;font-size:10pt;">Filed herewith</span></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;"><span style="font-family:inherit;font-size:10pt;">**</span></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;"><span style="font-family:inherit;font-size:10pt;">Furnished herewith</span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">78</span></div></div><hr style="page-break-after:always"></hr><div><a id="s8214D5677E63506EAC92514B59938F5E"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">ITEM&#160;16.</span><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;&#160;&#160;&#160;FORM 10-K SUMMARY</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:36px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Not applicable.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">79</span></div></div><hr style="page-break-after:always"></hr><div><a id="s4B552C188ACA5BF6AF0D906D0537B557"></a></div><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">SIGNATURES</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Pursuant to the requirements of Section&#160;13 or 15(d) of the Securities Exchange Act of 1934, as amended, the Registrant has duly caused this Annual Report on Form&#160;10-K to be signed on its behalf by the undersigned, thereunto duly authorized.</span></div><div style="line-height:120%;font-size:18pt;"><span style="font-family:inherit;font-size:18pt;">&#160;</span></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:48%;"></td><td style="width:4%;"></td><td style="width:1%;"></td><td style="width:47%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="3" style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">iROBOT CORPORATION</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">By:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;Colin M. Angle</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Colin M. Angle</span></div><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Chairman of the Board,</span></div><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Chief Executive Officer and Director</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Date: </span><span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;">February&#160;13, 2020</span><span style="font-family:inherit;font-size:10pt;"> </span></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">POWER OF ATTORNEY</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">KNOW ALL MEN BY THESE PRESENTS, that each person whose signature appears below constitutes and appoints Colin M. Angle and Alison Dean, jointly and severally, his or her attorney-in-fact, with the power of substitution, for him or her in any and all capacities, to sign any amendments to this Annual Report on Form&#160;10-K and to file the same, with exhibits thereto and other documents in connection therewith, with the Securities and Exchange Commission, hereby ratifying and confirming all that each of said attorneys-in-fact, or his or her substitute or substitutes, may do or cause to be done by virtue hereof.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Pursuant to the requirements of the Securities Exchange Act of 1934, as amended, this Annual Report on Form&#160;10-K has been signed by the following persons in the capacities indicated on </span><span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;">February&#160;13, 2020</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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:50%;"></td><td style="width:50%;"></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;text-decoration:underline;">Signature</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;text-decoration:underline;">Title(s)</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;C</span><span style="font-family:inherit;font-size:8pt;">OLIN</span><span style="font-family:inherit;font-size:10pt;">&#160;M. A</span><span style="font-family:inherit;font-size:8pt;">NGLE</span></div></td><td rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Chairman of the Board, Chief Executive Officer and Director</span></div><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(Principal Executive Officer)</span></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;"><span style="font-family:inherit;font-size:10pt;">Colin M. Angle</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;A</span><span style="font-family:inherit;font-size:8pt;">LISON</span><span style="font-family:inherit;font-size:10pt;">&#160;D</span><span style="font-family:inherit;font-size:8pt;">EAN</span></div></td><td rowspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Executive Vice President, Chief Financial Officer and</span></div><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Treasurer (Principal Financial and Accounting Officer)</span></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;"><span style="font-family:inherit;font-size:10pt;">Alison Dean</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;M</span><span style="font-family:inherit;font-size:8pt;">OHAMAD</span><span style="font-family:inherit;font-size:10pt;">&#160;A</span><span style="font-family:inherit;font-size:8pt;">LI</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Mohamad Ali</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;M</span><span style="font-family:inherit;font-size:8pt;">ICHAEL</span><span style="font-family:inherit;font-size:10pt;">&#160;B</span><span style="font-family:inherit;font-size:8pt;">ELL</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Michael Bell</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;D</span><span style="font-family:inherit;font-size:8pt;">EBORAH</span><span style="font-family:inherit;font-size:10pt;">&#160;G. E</span><span style="font-family:inherit;font-size:8pt;">LLINGER</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Deborah G. Ellinger</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;E</span><span style="font-family:inherit;font-size:8pt;">LISHA </span><span style="font-family:inherit;font-size:10pt;">F</span><span style="font-family:inherit;font-size:8pt;">INNEY</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Elisha Finney</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;R</span><span style="font-family:inherit;font-size:8pt;">UEY-</span><span style="font-family:inherit;font-size:10pt;">B</span><span style="font-family:inherit;font-size:8pt;">IN </span><span style="font-family:inherit;font-size:10pt;">K</span><span style="font-family:inherit;font-size:8pt;">AO</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Ruey-Bin Kao</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">80</span></div></div><hr style="page-break-after:always"></hr><div><div style="line-height:120%;font-size:10pt;"><a style="font-family:inherit;font-size:10pt;" href="#s17E74C6631555E848B93C07275A36363"><span style="font-family:inherit;font-size:10pt;">Table of Contents</span></a></div></div><div><br/></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:50%;"></td><td style="width:50%;"></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;E</span><span style="font-family:inherit;font-size:8pt;">VA </span><span style="font-family:inherit;font-size:10pt;">M</span><span style="font-family:inherit;font-size:8pt;">ANOLIS</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Eva Manolis</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;A</span><span style="font-family:inherit;font-size:8pt;">NDREW </span><span style="font-family:inherit;font-size:10pt;">M</span><span style="font-family:inherit;font-size:8pt;">ILLER</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Andrew Miller</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></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="font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">/s/&#160;&#160;&#160;&#160;M</span><span style="font-family:inherit;font-size:8pt;">ICHELLE</span><span style="font-family:inherit;font-size:10pt;">&#160;V. S</span><span style="font-family:inherit;font-size:8pt;">TACY</span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Director</span></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;"><span style="font-family:inherit;font-size:10pt;">Michelle V. Stacy</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:22px;padding-top:22px;text-align:left;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div><div><br/></div><div style="text-align:center;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">81</span></div></div>	</div></body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-4.2
<SEQUENCE>2
<FILENAME>irbt-12282019x10kex42.htm
<DESCRIPTION>EXHIBIT 4.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 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="sd3bc6937ae844b568db4129636ce2005"></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:inherit;font-size:10pt;font-weight:bold;">Exhibit 4.2</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">DESCRIPTION OF REGISTRANT&#8217;S SECURITIES REGISTERED PURSUANT TO SECTION 12 OF THE SECURITIES EXCHANGE ACT OF 1934</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Corporation has one class of securities registered under Section 12 of the Securities Exchange Act of 1934, as amended: common stock, par value $0.01 per share (the &#8220;Common Stock&#8221;). The following description sets forth certain material terms and provisions of the Common Stock. This description also summarizes relevant provisions of the Delaware General Corporation Law (&#8220;DGCL&#8221;). The following summary does not purport to be complete and is subject to, and is qualified in its entirety by reference to, the applicable provisions of the DGCL and our amended and restated certificate of incorporation, as amended from time to time (the &#8220;Charter&#8221;), and our amended and restated bylaws, as amended from time to time (the &#8220;Bylaws&#8221;), copies of which are incorporated by reference as an exhibit to our Annual Report on Form 10-K of which this Exhibit 4.2 is a part. We encourage you to read the Charter, the Bylaws and the applicable provisions of the DGCL for additional information. Throughout this exhibit, references to the &#8220;Company,&#8221; &#8220;we,&#8221; &#8220;our,&#8221; and &#8220;us&#8221; refer to iRobot Corporation.</font><font style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">&#160;</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Authorized Shares </font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The Charter authorizes us to issue up to 100,000,000 shares of Common Stock and 5,000,000 shares of preferred stock, par value $0.01 per share, in one or more series. No preferred stock has been issued as of December 28, 2019. Under the Charter, the rights, preferences and privileges of the preferred stock may be designated from time to time by the Company&#8217;s Board of Directors (the &#8220;Board&#8221;).</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">We may amend from time to time the Charter to increase or decrease the number of authorized shares of Common Stock and/or preferred stock. Any such amendment would require the affirmative vote of the holders of a majority of the outstanding shares of Common Stock entitled to vote, without a vote of the holders of the preferred stock (except as otherwise provided in any certificate of designations of any series of preferred stock).</font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Dividend Rights</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The holders of our Common Stock are entitled to receive dividends when, as, and if declared by our Board or any authorized committee thereof out of legally available assets or funds, subject to the rights of any then outstanding preferred stock.</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Liquidation Rights</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">If the Company is liquidated or dissolves, the holders of our Common Stock will be entitled to share ratably in the assets of the Company remaining after the payment of all of our liabilities, subject to any preferential liquidation rights of any preferred stock that at the time may be outstanding.</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Voting Rights </font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The holders of shares of Common Stock are entitled to one vote per share on all matters to be voted upon by shareholders. At a meeting of shareholders at which a quorum is present, a majority of the voting power of the shares represented decides all questions, unless the matter is one upon which, by express provision of the Charter, the Bylaws or statute, a different vote is required. There is no cumulative voting with respect to the election of directors, which means that the holders of a majority of the shares can elect all the directors if they choose to do so, and in such event, the holders of the remaining shares would not be able to elect any directors.</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Other Matters</font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">All issued and outstanding shares of our Common Stock are fully paid and nonassessable. The holders of our Common Stock have no preemptive, conversion or exchange rights. There are no redemption or sinking fund provisions applicable to our Common Stock. The rights, preferences, and privileges of our common shareholders are subject to the rights of the shareholders of any series of preferred stock that we may designate in the future. Our Charter and Bylaws do not restrict the ability of a holder of our Common Stock to transfer his, her or its shares of Common Stock.&#160;</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><hr style="page-break-after:always"><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:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Certain Anti-Takeover Provisions of Delaware Law, Our Charter and Our Bylaws</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Our Charter and Bylaws contain provisions that may delay, defer, discourage or prevent a change in control of the Company, the removal of our existing management or directors, or an offer by a potential acquirer to our stockholders. These provisions include:</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">Classified Board of Directors</font><font style="font-family:inherit;font-size:10pt;">: In accordance with the terms of our Charter, our Board is divided into three classes, Class I, Class II and Class III, with members of each class serving staggered three-year terms. The classification of the Board may have the effect of making it more difficult for stockholders to change the composition of the Board.</font></div></td></tr></table><div style="line-height:120%;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">No cumulative voting. </font><font style="font-family:inherit;font-size:10pt;">The DGCL provides that stockholders are not entitled to the right to cumulate votes in the election of directors unless the Charter specifically authorizes cumulative voting. Our Charter does not authorize cumulative voting.</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">Requirements for removal of directors. </font><font style="font-family:inherit;font-size:10pt;">Our Charter provides that directors may be removed only for cause and only with the affirmative vote of the holders of 75% or more of the shares then entitled to vote at an election of directors. Any vacancy on the Board must be filled only by the remaining directors then in office.</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">Special meeting of stockholders</font><font style="font-family:inherit;font-size:10pt;">. Our Charter provides that special meetings of the stockholders may be called only by the Board acting pursuant to a resolution approved by the affirmative vote of a majority of the directors then in office.</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">No stockholder action by written consent. </font><font style="font-family:inherit;font-size:10pt;">Our Charter provides that stockholder action can be taken only at an annual or special meeting of stockholders and cannot be taken by written consent in lieu of a meeting.</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">Stockholder advance notice procedures. </font><font style="font-family:inherit;font-size:10pt;">Our Bylaws establish advance notice procedures with respect to stockholders proposals and the nominations of candidates for election as directors. These provisions may have the effect of precluding the conduct of certain business at a meeting if the proper procedures are not followed. </font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">Supermajority approval requirements. </font><font style="font-family:inherit;font-size:10pt;">Certain provisions of the Charter contain supermajority voting provisions. Specifically, the approval of the holders of 75% or more of the outstanding shares of the Company is required to: remove a director from office prior to the expiration of his or her term with cause; amend or repeal the Bylaws; or amend or repeal certain articles of the Charter, which address, among other things, actions by written consent of stockholders, special meetings of stockholders requirements and procedures for electing and removing board members and filling vacancies, limitation of liability of directors, by-law amendments, and amendments of the Charter.</font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:72px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;">Authorized but Unissued Shares. </font><font style="font-family:inherit;font-size:10pt;">Our authorized but unissued shares of Common Stock and Preferred Stock are available for future issuance without stockholder approval. These additional shares may be utilized for a variety of corporate purposes, including future public offerings to raise additional capital, corporate acquisitions and employee benefit plans. The existence of authorized but unissued shares of Common Stock and Preferred Stock could render more difficult or discourage an attempt to obtain control of a majority of our Common Stock by means of a proxy contest, tender offer, merger or otherwise. </font></div></td></tr></table><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Delaware Business Combination Statute</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">We are subject to the provisions of Section&#160;203 of the DGCL. In general, Section 203 prohibits a publicly held Delaware corporation from engaging in a &#8220;business combination&#8221; with an &#8220;interested shareholder&#8221; within three years of the time the shareholder became an interested shareholder, unless:</font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Prior to the time the shareholder became an interested shareholder, the board of directors of the corporation approved either the business combination or the transaction that resulted in the shareholder becoming an interested shareholder;</font></div></td></tr></table><div style="line-height:120%;text-align:justify;padding-left:24px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Upon consummation of the transaction that resulted in the shareholder becoming an interested shareholder, the interested shareholder owned at least 85% of the voting stock of the corporation outstanding at the time the transaction commenced, exclusive of shares owned by directors who are also officers and by certain employee stock plans; or</font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><hr style="page-break-after:always"><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div><div><br></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><font style="font-family:inherit;font-size:10pt;">&#8226;</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">At or subsequent to such time, the business combination is approved by the board of directors and authorized at an annual or special meeting of the shareholders by the affirmative vote of at least two-thirds of the outstanding voting stock that is not owned by the interested shareholder.</font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Generally, for purposes of the Delaware Business Combination Statute, a &#8220;business combination&#8221; is defined to include mergers, asset sales, and other transactions resulting in financial benefit to a stockholder. In general, an &#8220;interested stockholder&#8221; is a person who, together with affiliates and associates, owns (or within three years, did own) 15% or more of a corporation&#8217;s voting stock. The statute could prohibit or delay mergers or other takeover or change in control attempts with respect to the Company and, accordingly, may discourage attempts to acquire us even though such a transaction may offer the Company&#8217;s stockholders the opportunity to sell their stock at a price above the prevailing market price.&#160;</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Transfer Agent and Registrar</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:42px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The transfer agent and registrar for our common stock is&#160;Computershare Trust Company, N.A.</font></div><div style="line-height:120%;text-align:left;text-indent:42px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Nasdaq Global Select Market</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:42px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Our Common Stock is listed on The Nasdaq Global Select Market under the symbol &#8220;IRBT.&#8221;</font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;text-indent:48px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div><div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21.1
<SEQUENCE>3
<FILENAME>irbt-12282019x10kex211.htm
<DESCRIPTION>EXHIBIT 21.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 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s45A5937A1A015E48BED3E1AE19AAA5B7"></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:inherit;font-size:10pt;font-weight:bold;">Exhibit 21.1</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">iROBOT CORPORATION</font><font style="font-family:inherit;font-size:10pt;">&#32;</font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">SUBSIDIARIES OF THE REGISTRANT</font><font style="font-family:inherit;font-size:10pt;">&#32;</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="3"></td></tr><tr><td style="width:56%;"></td><td style="width:3%;"></td><td style="width:41%;"></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:53px;font-size:10pt;"><font style="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:53px;font-size:10pt;"><font style="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:53px;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:center;font-size:8pt;"><font style="font-family:inherit;font-size:8pt;font-weight:bold;">Subsidiary Legal Name</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><font style="font-family:inherit;font-size:8pt;font-weight:bold;">Jurisdiction of Incorporation/Formation</font></div></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="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;border-top:1px solid #000000;"><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:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Securities Corporation</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Massachusetts</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot US Holdings Inc.</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Delaware</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Holdings LLC.</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Delaware</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot (India) Private Limited</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">India</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Guangzhou iRobot Technology Consulting Company Limited</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">China</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Shanghai iRobot Robot Trading Co., Ltd.</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">China</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot (HK) Limited</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Hong Kong</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Japan G.K.</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Japan</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot UK Ltd.</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">United Kingdom</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot France SAS</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">France</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Belgium SPRL</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Belgium</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Portugal, Unipessoal Lda</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Portugal</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Austria GmbH</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Austria</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Germany GmbH</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Germany</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Netherlands B.V.</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Netherlands</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:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">iRobot Iberia SL</font></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right: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;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Spain</font></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></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>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>4
<FILENAME>irbt-12282019x10kex231.htm
<DESCRIPTION>EXHIBIT 23.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 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="sF8DBA44A24A05F64A9A0586F7DB21A0F"></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%;padding-bottom:32px;padding-top:32px;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Exhibit 23.1</font></div><div style="line-height:120%;padding-bottom:32px;padding-top:32px;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;text-decoration:underline;">CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</font></div><div style="line-height:120%;padding-bottom:8px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">We hereby consent to the incorporation by reference in the Registration Statement on Form S-8 (Nos. 333-225482, 333-219686, 333-204669, 333-193998, 333-186700, 333-184320, 333-179593, 333-172333, 333-164993, 333-157306, 333-149373, 333-140707, 333-129576) of iRobot Corporation of our report dated February 13, 2020 relating to the consolidated financial statements  and the effectiveness of internal control over financial reporting, which appears in this Form 10-K.</font></div><div style="line-height:120%;padding-bottom:8px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-bottom:8px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ PricewaterhouseCoopers LLP</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Boston, Massachusetts </font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">February 13, 2020</font></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-bottom:16px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></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>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>5
<FILENAME>irbt-12282019x10kex311.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 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="s0DDBE1D57D545E288173D87A2225F575"></a></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Exhibit 31.1 </font></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Certifications </font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">I, Colin M. Angle, certify that: </font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">1.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">I have reviewed this Annual Report on Form 10-K of iRobot Corporation; </font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">2.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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></td></tr></table><div style="line-height:120%;text-align:justify;padding-left:20px;text-indent:-19px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">3.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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></td></tr></table><div style="line-height:120%;text-align:justify;padding-left:20px;text-indent:-19px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">4.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The registrant's other certifying officer 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></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;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><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;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><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;font-size:10pt;">Evaluated the effectiveness of the registrant'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><div style="line-height:120%;text-align:justify;padding-left:37px;text-indent:-20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;font-size:10pt;">Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting; and</font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:16px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">5.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):</font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;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's ability to record, process, summarize and report financial information; and</font></div></td></tr></table><div style="line-height:120%;text-align:justify;padding-left:37px;text-indent:-20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;font-size:10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</font></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;text-align:left;font-size:4pt;"><font style="font-family:inherit;font-size:4pt;">&#160;</font></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Date: </font><font style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;">February&#160;13, 2020</font><font style="font-family:inherit;font-size:10pt;">&#32;</font></div><div style="line-height:120%;text-align:left;font-size:9pt;"><font style="font-family:inherit;font-size:9pt;">&#160;</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="2"></td></tr><tr><td style="width:50%;"></td><td style="width:50%;"></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:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-bottom:1px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ C</font><font style="font-family:inherit;font-size:7pt;">OLIN</font><font style="font-family:inherit;font-size:10pt;">&#160;M. A</font><font style="font-family:inherit;font-size:7pt;">NGLE</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:inherit;font-size:10pt;">Colin M. Angle</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:inherit;font-size:10pt;">Chief Executive Officer</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>6
<FILENAME>irbt-12282019x10kex312.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 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="sC238398B588253CAAD9A57CA0F880B38"></a></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Exhibit 31.2 </font></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Certifications </font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">I, Alison Dean, certify that: </font></div><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">1.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">I have reviewed this Annual Report on Form 10-K of iRobot Corporation; </font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">2.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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></td></tr></table><div style="line-height:120%;text-align:justify;padding-left:20px;text-indent:-19px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">3.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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></td></tr></table><div style="line-height:120%;text-align:justify;padding-left:20px;text-indent:-19px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">4.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The registrant's other certifying officer 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></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;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><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;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><div style="line-height:120%;text-align:justify;padding-left:37px;text-indent:-20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;font-size:10pt;">Evaluated the effectiveness of the registrant'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><div style="line-height:120%;text-align:justify;padding-left:37px;text-indent:-20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;font-size:10pt;">Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting; and</font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:20px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:1px;"><font style="font-family:inherit;font-size:10pt;">5.</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):</font></div></td></tr></table><div style="line-height:120%;text-align:justify;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;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's ability to record, process, summarize and report financial information; and</font></div></td></tr></table><div style="line-height:120%;text-align:justify;padding-left:37px;text-indent:-20px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:37px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:17px;"><font style="font-family:inherit;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:inherit;font-size:10pt;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.</font></div></td></tr></table><div style="line-height:120%;padding-top:12px;text-align:left;padding-left:96px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;padding-top:12px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Date: </font><font style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;">February&#160;13, 2020</font><font style="font-family:inherit;font-size:10pt;">&#32;</font></div><div style="line-height:120%;text-align:left;font-size:9pt;"><font style="font-family:inherit;font-size:9pt;">&#160;</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="2"></td></tr><tr><td style="width:50%;"></td><td style="width:50%;"></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:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="padding-bottom:1px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ ALISON DEAN</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:inherit;font-size:10pt;">Alison Dean</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:inherit;font-size:10pt;">Chief Financial Officer</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>7
<FILENAME>irbt-12282019x10kex321.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 2020 Workiva -->
		<title>Exhibit</title>
	</head>
	<body><div style="font-family:Times New Roman;font-size:10pt;">
<div><a name="sEB18E68DAEC855958333F80E1D729610"></a></div><div style="line-height:120%;text-align:right;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">Exhibit 32.1 </font></div><div style="line-height:120%;padding-top:12px;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">CERTIFICATION PURSUANT TO </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">18 U.S.C. SECTION 1350 </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">AS ADOPTED PURSUANT TO </font></div><div style="line-height:120%;text-align:center;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;font-weight:bold;">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002 </font></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:32px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">In connection with the Annual Report on Form 10-K of iRobot Corporation (the "Company") for the year ended </font><font style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;">December&#160;28, 2019</font><font style="font-family:inherit;font-size:10pt;">&#32;as filed with the Securities and Exchange Commission on the date hereof (the "Report"), we, Colin M. Angle, the Chief Executive Officer of the Company and Alison Dean, the Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. Section&#160;1350, as adopted pursuant to Section&#160;906 of the Sarbanes-Oxley Act of 2002, to our knowledge, that: </font></div><table cellpadding="0" cellspacing="0" style="padding-top:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">(1)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">the Report 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 </font></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:12px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:24px;"></td><td></td></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><font style="font-family:inherit;font-size:10pt;">(2)</font></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company. </font></div></td></tr></table><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:32px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">This certification is being provided pursuant to 18 U.S.C. 1350 and is not to be deemed a part of the Report, nor is it to be deemed to be &#8220;filed&#8221; for any purpose whatsoever. </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="3"></td></tr><tr><td style="width:6%;"></td><td style="width:47%;"></td><td style="width:47%;"></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:inherit;font-size:10pt;">Dated</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:inherit;font-size:10pt;">February&#160;13, 2020</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="padding-bottom:1px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ C</font><font style="font-family:inherit;font-size:7pt;">OLIN</font><font style="font-family:inherit;font-size:10pt;">&#160;M. A</font><font style="font-family:inherit;font-size:7pt;">NGLE</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:7pt;"><font style="font-family:inherit;font-size:7pt;">&#160;&#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;"><font style="font-family:inherit;font-size:10pt;">Colin M. Angle</font></div><div style="padding-bottom:1px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">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;height:12px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">&#160;</font></div></td><td colspan="2" 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;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Dated</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:inherit;font-size:10pt;">February&#160;13, 2020</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="padding-bottom:1px;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">/s/ ALISON DEAN</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:7pt;"><font style="font-family:inherit;font-size:7pt;">&#160;&#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;"><font style="font-family:inherit;font-size:10pt;">Alison Dean</font></div><div style="padding-bottom:1px;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;">Chief Financial Officer</font></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div style="line-height:120%;font-size:10pt;"><font style="font-family:inherit;font-size:10pt;"><br></font></div><div><br></div>	</div></body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>8
<FILENAME>irbt-20191228.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.irobot.com/20191228" xmlns:irbt="http://www.irobot.com/20191228" 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: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">
  <xsd:import namespace="http://fasb.org/srt-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/srt/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-gaap/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-roles/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd" />
  <xsd:import namespace="http://fasb.org/us-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd" />
  <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="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/currency/2019-01-31" schemaLocation="https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/dei/2019-01-31" schemaLocation="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd" />
  <xsd:import namespace="http://xbrl.sec.gov/exch/2019-01-31" schemaLocation="https://xbrl.sec.gov/exch/2019/exch-2019-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/2018-01-31" schemaLocation="https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd" />
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="irbt-20191228_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="irbt-20191228_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="irbt-20191228_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="irbt-20191228_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple" />
      <link:roleType id="AccountsReceivableAllowancesDetails" roleURI="http://www.irobot.com/role/AccountsReceivableAllowancesDetails">
        <link:definition>2402404 - Disclosure - - Accounts Receivable Allowances (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="AccruedExpenses" roleURI="http://www.irobot.com/role/AccruedExpenses">
        <link:definition>2112100 - Disclosure - Accrued Expenses</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="AccruedExpensesDetails" roleURI="http://www.irobot.com/role/AccruedExpensesDetails">
        <link:definition>2412402 - Disclosure - Accrued Expenses (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="AccruedExpensesTables" roleURI="http://www.irobot.com/role/AccruedExpensesTables">
        <link:definition>2312301 - Disclosure - Accrued Expenses (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="BusinessCombinationsNotes" roleURI="http://www.irobot.com/role/BusinessCombinationsNotes">
        <link:definition>2105100 - Disclosure - Business Combinations (Notes)</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="BusinessCombinationsProFormaDetails" roleURI="http://www.irobot.com/role/BusinessCombinationsProFormaDetails">
        <link:definition>2405404 - Disclosure - Business Combinations - Pro Forma (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="BusinessCombinationsRobopolisAcquisitionDetails" roleURI="http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails">
        <link:definition>2405402 - Disclosure - Business Combinations - Robopolis Acquisition (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="BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" roleURI="http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails">
        <link:definition>2405403 - Disclosure - Business Combinations - Sales On Demand Corporation Acquisition (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="BusinessCombinationsTables" roleURI="http://www.irobot.com/role/BusinessCombinationsTables">
        <link:definition>2305301 - Disclosure - Business Combinations (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="CommitmentsAndContingencies" roleURI="http://www.irobot.com/role/CommitmentsAndContingencies">
        <link:definition>2121100 - Disclosure - Commitments and Contingencies</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="CommitmentsAndContingenciesDetails" roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails">
        <link:definition>2421402 - Disclosure - Commitments and Contingencies (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="CommitmentsAndContingenciesDetails1" roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails1">
        <link:definition>2421403 - Disclosure - Commitments and Contingencies (Details 1)</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="CommitmentsAndContingenciesDetailsTextual" roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetailsTextual">
        <link:definition>2421404 - Disclosure - Commitments and Contingencies (Details Textual)</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="CommitmentsAndContingenciesTables" roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesTables">
        <link:definition>2321301 - Disclosure - Commitments and Contingencies (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.irobot.com/role/ConsolidatedBalanceSheets">
        <link:definition>1001000 - 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.irobot.com/role/ConsolidatedBalanceSheetsParenthetical">
        <link:definition>1001501 - 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="ConsolidatedStatementOfComprehensiveIncome" roleURI="http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome">
        <link:definition>1003000 - Statement - Consolidated Statement 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="ConsolidatedStatementsOfCashFlows" roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows">
        <link:definition>1005000 - 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="ConsolidatedStatementsOfCashFlowsCalc2" roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2">
        <link:definition>1005000 - 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="ConsolidatedStatementsOfIncome" roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfIncome">
        <link:definition>1002000 - Statement - Consolidated Statements of 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="ConsolidatedStatementsOfStockholdersEquity" roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity">
        <link:definition>1004000 - Statement - Consolidated Statements of Stockholders' 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="DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails">
        <link:definition>2415402 - Disclosure - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (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="DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails">
        <link:definition>2415403 - Disclosure - Derivative Instruments and Hedging Activities - Gain (Loss) on Derivatives (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="DerivativeInstrumentsAndHedgingActivitiesNotes" roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes">
        <link:definition>2115100 - Disclosure - Derivative Instruments and Hedging Activities (Notes)</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="DerivativeInstrumentsAndHedgingActivitiesTables" roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables">
        <link:definition>2315301 - Disclosure - Derivative Instruments and Hedging Activities (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="DivestitureDetails" roleURI="http://www.irobot.com/role/DivestitureDetails">
        <link:definition>2406401 - Disclosure - Divestiture (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="DivestitureNotes" roleURI="http://www.irobot.com/role/DivestitureNotes">
        <link:definition>2106100 - Disclosure - Divestiture (Notes)</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.irobot.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="EmployeeBenefitsDetails" roleURI="http://www.irobot.com/role/EmployeeBenefitsDetails">
        <link:definition>2424401 - Disclosure - Employee Benefits (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="EmployeeBenefitsNotes" roleURI="http://www.irobot.com/role/EmployeeBenefitsNotes">
        <link:definition>2124100 - Disclosure - Employee Benefits (Notes)</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.irobot.com/role/FairValueMeasurements">
        <link:definition>2116100 - 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="FairValueMeasurementsConvertibleNoteTables" roleURI="http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables">
        <link:definition>2316302 - Disclosure - Fair Value Measurements Convertible Note (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="FairValueMeasurementsDetails" roleURI="http://www.irobot.com/role/FairValueMeasurementsDetails">
        <link:definition>2416403 - Disclosure - Fair Value Measurements (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.irobot.com/role/FairValueMeasurementsTables">
        <link:definition>2316301 - 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="GoodwillAndOtherIntangibleAssets" roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets">
        <link:definition>2111100 - Disclosure - Goodwill and other 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="GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails">
        <link:definition>2411404 - Disclosure - Goodwill and other intangible assets - Future Amortization Expense (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="GoodwillAndOtherIntangibleAssetsGoodwillDetails" roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails">
        <link:definition>2411402 - Disclosure - Goodwill and other intangible assets - Goodwill (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="GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails">
        <link:definition>2411403 - Disclosure - Goodwill and other intangible assets - 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="GoodwillAndOtherIntangibleAssetsTables" roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables">
        <link:definition>2311301 - Disclosure - Goodwill and other 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="IncomeTaxes" roleURI="http://www.irobot.com/role/IncomeTaxes">
        <link:definition>2125100 - Disclosure - Income 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="IncomeTaxesComponentsOfIncomeTaxExpenseDetails" roleURI="http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails">
        <link:definition>2425403 - Disclosure - Income Taxes - Components of Income Tax Expense (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="IncomeTaxesEffectiveIncomeTaxReconciliationDetails" roleURI="http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails">
        <link:definition>2425404 - Disclosure - Income Taxes - Effective Income Tax 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="IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" roleURI="http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails">
        <link:definition>2425402 - Disclosure - Income Taxes - Income (Loss) Before Provision For Income Taxes (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="IncomeTaxesNarrativeDetails" roleURI="http://www.irobot.com/role/IncomeTaxesNarrativeDetails">
        <link:definition>2425407 - Disclosure - Income Taxes - Narrative (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="IncomeTaxesNetDeferredTaxAssetsDetails" roleURI="http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails">
        <link:definition>2425405 - Disclosure - Income Taxes - Net Deferred Tax 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="IncomeTaxesTables" roleURI="http://www.irobot.com/role/IncomeTaxesTables">
        <link:definition>2325301 - Disclosure - Income 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="IncomeTaxesUnrecognizedTaxBenefitsDetails" roleURI="http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails">
        <link:definition>2425406 - Disclosure - Income Taxes - Unrecognized Tax Benefits (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="IndustrySegmentGeographicInformationAndSignificantCustomers" roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers">
        <link:definition>2126100 - Disclosure - Industry Segment, Geographic Information and Significant Customers</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="IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual">
        <link:definition>2426402 - Disclosure - Industry Segment, Geographic Information and Significant Customers (Details Textual)</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="IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables">
        <link:definition>2326301 - Disclosure - Industry Segment, Geographic Information and Significant Customers Revenue by geography (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="Inventory" roleURI="http://www.irobot.com/role/Inventory">
        <link:definition>2107100 - Disclosure - Inventory</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="InventoryDetails" roleURI="http://www.irobot.com/role/InventoryDetails">
        <link:definition>2407402 - Disclosure - Inventory (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="InventoryTables" roleURI="http://www.irobot.com/role/InventoryTables">
        <link:definition>2307301 - Disclosure - Inventory (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="LeasesDetails" roleURI="http://www.irobot.com/role/LeasesDetails">
        <link:definition>2404403 - Disclosure - Leases (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="LeasesMaturityOfOperatingLeaseLiabilityDetails" roleURI="http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails">
        <link:definition>2404404 - Disclosure - Leases Maturity of Operating Lease Liability (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="LeasesNotes" roleURI="http://www.irobot.com/role/LeasesNotes">
        <link:definition>2104100 - Disclosure - Leases (Notes)</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="LeasesPolicies" roleURI="http://www.irobot.com/role/LeasesPolicies">
        <link:definition>2204202 - Disclosure - Leases (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="LeasesTables" roleURI="http://www.irobot.com/role/LeasesTables">
        <link:definition>2304301 - Disclosure - Leases (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="MaturityOfOperatingLeaseLiabilityDetailsDetails" roleURI="http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails">
        <link:definition>2429400 - Schedule - Maturity of Operating Lease Liability (Details) (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="NatureOfBusiness" roleURI="http://www.irobot.com/role/NatureOfBusiness">
        <link:definition>2101100 - Disclosure - Nature of the Business</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="NetIncomePerShareDetails" roleURI="http://www.irobot.com/role/NetIncomePerShareDetails">
        <link:definition>2402408 - Disclosure - - Net Income Per Share (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="PropertyAndEquipment" roleURI="http://www.irobot.com/role/PropertyAndEquipment">
        <link:definition>2108100 - Disclosure - Property and Equipment</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="PropertyAndEquipment1Details" roleURI="http://www.irobot.com/role/PropertyAndEquipment1Details">
        <link:definition>2408402 - Disclosure - Property and Equipment 1 (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="PropertyAndEquipmentDetails" roleURI="http://www.irobot.com/role/PropertyAndEquipmentDetails">
        <link:definition>2402405 - Disclosure - - Property and Equipment (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="PropertyAndEquipmentTables" roleURI="http://www.irobot.com/role/PropertyAndEquipmentTables">
        <link:definition>2308301 - Disclosure - Property and Equipment (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="QuarterlyInformationUnaudited" roleURI="http://www.irobot.com/role/QuarterlyInformationUnaudited">
        <link:definition>2127100 - Disclosure - Quarterly Information (Unaudited)</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="QuarterlyInformationUnauditedDetails" roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedDetails">
        <link:definition>2427402 - Disclosure - Quarterly Information (Unaudited) (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="QuarterlyInformationUnauditedTables" roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedTables">
        <link:definition>2327301 - Disclosure - Quarterly Information (Unaudited) (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="RevenueRecognitionContractBalancesDetails" roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails">
        <link:definition>2403407 - Disclosure - Revenue Recognition Contract Balances (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="RevenueRecognitionContractBalancesTables" roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesTables">
        <link:definition>2303305 - Disclosure - Revenue Recognition Contract balances (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="RevenueRecognitionDisaggregationOfRevenueDetails" roleURI="http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails">
        <link:definition>2403406 - Disclosure - Revenue Recognition Disaggregation of Revenue (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="RevenueRecognitionInitialApplicationDetails" roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationDetails">
        <link:definition>2403409 - Disclosure - Revenue Recognition Initial application (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="RevenueRecognitionInitialApplicationTables" roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables">
        <link:definition>2303304 - Disclosure - Revenue Recognition Initial application (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="RevenueRecognitionNotes" roleURI="http://www.irobot.com/role/RevenueRecognitionNotes">
        <link:definition>2103100 - Disclosure - Revenue Recognition (Notes)</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="RevenueRecognitionPracticalExpedientsPolicies" roleURI="http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies">
        <link:definition>2203202 - Disclosure - Revenue Recognition Practical expedients (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="RevenueRecognitionSignificantJudgmentsDetails" roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails">
        <link:definition>2403408 - Disclosure - Revenue Recognition Significant Judgments (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="RevenueRecognitionSignificantJudgmentsPolicies" roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies">
        <link:definition>2203201 - Disclosure - Revenue Recognition Significant judgments (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="RevenueRecognitionTables" roleURI="http://www.irobot.com/role/RevenueRecognitionTables">
        <link:definition>2303303 - 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="ShortTermInvestmentsDetails" roleURI="http://www.irobot.com/role/ShortTermInvestmentsDetails">
        <link:definition>2402403 - Disclosure - - Short Term Investments (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="StockBasedCompensation" roleURI="http://www.irobot.com/role/StockBasedCompensation">
        <link:definition>2120100 - Disclosure - Stock-Based Compensation</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="StockBasedCompensationEsppDetails" roleURI="http://www.irobot.com/role/StockBasedCompensationEsppDetails">
        <link:definition>2420407 - Disclosure - Stock-Based Compensation - ESPP (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="StockBasedCompensationNarrativeDetails" roleURI="http://www.irobot.com/role/StockBasedCompensationNarrativeDetails">
        <link:definition>2420402 - Disclosure - Stock-Based Compensation - Narrative (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="StockBasedCompensationRsusAndPsusDetails" roleURI="http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails">
        <link:definition>2420406 - Disclosure - Stock-Based Compensation - RSUs and PSUs (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="StockBasedCompensationStockCompExpenseClassificationDetails" roleURI="http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails">
        <link:definition>2420408 - Disclosure - Stock-Based Compensation Stock comp expense classification (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="StockBasedCompensationStockOptionsActivityDetails" roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails">
        <link:definition>2420403 - Disclosure - Stock-Based Compensation - Stock Options 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="StockBasedCompensationStockOptionsAssumptionsDetails" roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails">
        <link:definition>2420404 - Disclosure - Stock-Based Compensation - Stock Options Assumptions (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="StockBasedCompensationStockOptionsExercisePriceRangeDetails" roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails">
        <link:definition>2420405 - Disclosure - Stock-Based Compensation - Stock Options Exercise Price Range (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="StockBasedCompensationTables" roleURI="http://www.irobot.com/role/StockBasedCompensationTables">
        <link:definition>2320301 - Disclosure - Stock-Based Compensation (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="StockholdersEquity" roleURI="http://www.irobot.com/role/StockholdersEquity">
        <link:definition>2119100 - Disclosure - Stockholders' 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="StockholdersEquityDetails" roleURI="http://www.irobot.com/role/StockholdersEquityDetails">
        <link:definition>2419401 - Disclosure - Stockholders' Equity (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.irobot.com/role/SummaryOfSignificantAccountingPolicies">
        <link:definition>2102100 - 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="SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails">
        <link:definition>2402407 - Disclosure - Summary of Significant Accounting Policies Income taxes (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="SummaryOfSignificantAccountingPoliciesNarrativeDetails" roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails">
        <link:definition>2402409 - Disclosure - Summary of Significant Accounting Policies - Narrative (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="SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails">
        <link:definition>2402406 - Disclosure - Summary of Significant Accounting Policies Other 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="SummaryOfSignificantAccountingPoliciesPolicies" roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies">
        <link:definition>2202201 - 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="SummaryOfSignificantAccountingPoliciesTables" roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables">
        <link:definition>2302302 - Disclosure - Summary of Significant Accounting Policies (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="WorkingCapitalFacilities" roleURI="http://www.irobot.com/role/WorkingCapitalFacilities">
        <link:definition>2114100 - Disclosure - Working Capital Facilities</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="WorkingCapitalFacilitiesDetails" roleURI="http://www.irobot.com/role/WorkingCapitalFacilitiesDetails">
        <link:definition>2414401 - Disclosure - Working Capital Facilities (Details)</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="irbt_AccountingPoliciesLineItems" name="AccountingPoliciesLineItems" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_AccountingPoliciesTable" name="AccountingPoliciesTable" nillable="true" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_AccruedDirectFulfillmentCosts" name="AccruedDirectFulfillmentCosts" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element id="irbt_AccruedSalesTax" name="AccruedSalesTax" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element id="irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" name="AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_AllOtherRegionsMember" name="AllOtherRegionsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_AllowanceForPriceProtectionMember" name="AllowanceForPriceProtectionMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_AllowanceforothercreditsandincentivesMember" name="AllowanceforothercreditsandincentivesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_AllowanceforproductreturnsMember" name="AllowanceforproductreturnsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_AmazonMember" name="AmazonMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_AmortizationofIntangibleAssetsNonproduction" name="AmortizationofIntangibleAssetsNonproduction" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses" name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element id="irbt_CommonStockNumberOfVotesPerShare" name="CommonStockNumberOfVotesPerShare" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="irbt_ConsumerRobotRevenueMember" name="ConsumerRobotRevenueMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_ContractBalancesAbstract" name="ContractBalancesAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_Costofproductrevenue" name="Costofproductrevenue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities" name="DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="irbt_DocumentAndEntityInformationAbstract" name="DocumentAndEntityInformationAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" name="EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation" name="EffectiveIncomeTaxRateReconciliationExecutiveCompensation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" name="EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount" name="EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" name="EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration" />
  <xsd:element id="irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" name="EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_EvolutionRoboticsIncErMember" name="EvolutionRoboticsIncErMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_FifteenCustomersMember" name="FifteenCustomersMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_Finitelivedintangibleassetsfutureamortizationtotal" name="Finitelivedintangibleassetsfutureamortizationtotal" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="irbt_IncometaxesAbstract" name="IncometaxesAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_InterestRateAboveLIBORUnderConditionOne" name="InterestRateAboveLIBORUnderConditionOne" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant" />
  <xsd:element id="irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo" name="InterestRateAbovetheEurodollarRateUnderConditionTwo" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant" />
  <xsd:element id="irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo" name="InterestRateAbovetheFederalFundRateUnderConditionTwo" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant" />
  <xsd:element id="irbt_LeaseholdImprovementsTerms" name="LeaseholdImprovementsTerms" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_Letterofcreditfacilitymaximumborrowing" name="Letterofcreditfacilitymaximumborrowing" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element id="irbt_Lineofcreditmaximumamount" name="Lineofcreditmaximumamount" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="irbt_OperatingLeaseCostAbstract" name="OperatingLeaseCostAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesEightMember" name="RangeOfExercisePricesEightMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesFiveMember" name="RangeOfExercisePricesFiveMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesFourMember" name="RangeOfExercisePricesFourMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesNineMember" name="RangeOfExercisePricesNineMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesOneMember" name="RangeOfExercisePricesOneMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesSevenMember" name="RangeOfExercisePricesSevenMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesSixMember" name="RangeOfExercisePricesSixMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesTenMember" name="RangeOfExercisePricesTenMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesThreeMember" name="RangeOfExercisePricesThreeMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RangeOfExercisePricesTwoMember" name="RangeOfExercisePricesTwoMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_Refundliabilityothercreditsandincentives" name="Refundliabilityothercreditsandincentives" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element id="irbt_Refundliabilityproductreturns" name="Refundliabilityproductreturns" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="irbt_RevenuefromContractwithCustomerInitialapplicationAbstract" name="RevenuefromContractwithCustomerInitialapplicationAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RevolvingLineOfCreditTextualAbstract" name="RevolvingLineOfCreditTextualAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RobopolisMember" name="RobopolisMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_RobopolisSASMember" name="RobopolisSASMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_SalesOnDemandCorporationMember" name="SalesOnDemandCorporationMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_SalesOnDemandCorporationSODCMember" name="SalesOnDemandCorporationSODCMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock" name="ScheduleOfAccountsReceivableAllowancesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock" name="ScheduleofLeasesSupplementalCashFlowTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_ScheduleofrevenuebygeographyLineItems" name="ScheduleofrevenuebygeographyLineItems" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_ScheduleofrevenuebygeographyTable" name="ScheduleofrevenuebygeographyTable" nillable="true" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_ScheduleofrevenuebygeographyTableTextBlock" name="ScheduleofrevenuebygeographyTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio" name="SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio" nillable="true" substitutionGroup="xbrli:item" type="xbrli:pureItemType" xbrli:periodType="instant" />
  <xsd:element id="irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans" name="SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="instant" />
  <xsd:element id="irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod" name="SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount" name="SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant" />
  <xsd:element abstract="true" id="irbt_SharebasedcompensationexpensebyclassificationLineItems" name="SharebasedcompensationexpensebyclassificationLineItems" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_SharebasedcompensationexpensebyclassificationTable" name="SharebasedcompensationexpensebyclassificationTable" nillable="true" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_SharebasedcompensationexpensebyclassificationTableTextBlock" name="SharebasedcompensationexpensebyclassificationTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_ShortTermInvestmentsPolicyTextBlock" name="ShortTermInvestmentsPolicyTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_StockRepurchaseProgramCommencementDate" name="StockRepurchaseProgramCommencementDate" nillable="true" substitutionGroup="xbrli:item" type="xbrli:dateItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" name="StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" name="TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element id="irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" name="TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_ThreeCustomersMember" name="ThreeCustomersMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_TwoCustomersMember" name="TwoCustomersMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element abstract="true" id="irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember" name="TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration" />
  <xsd:element id="irbt_WarrantyTerm" name="WarrantyTerm" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration" />
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>9
<FILENAME>irbt-20191228_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.irobot.com/role/AccountsReceivableAllowancesDetails" xlink:href="irbt-20191228.xsd#AccountsReceivableAllowancesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpenses" xlink:href="irbt-20191228.xsd#AccruedExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpensesDetails" xlink:href="irbt-20191228.xsd#AccruedExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpensesTables" xlink:href="irbt-20191228.xsd#AccruedExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsNotes" xlink:href="irbt-20191228.xsd#BusinessCombinationsNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsProFormaDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsProFormaDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsRobopolisAcquisitionDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsTables" xlink:href="irbt-20191228.xsd#BusinessCombinationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingencies" xlink:href="irbt-20191228.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails1" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetailsTextual" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetailsTextual" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesTables" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedBalanceSheets" xlink:href="irbt-20191228.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="irbt-20191228.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome" xlink:href="irbt-20191228.xsd#ConsolidatedStatementOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfCashFlowsCalc2" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfIncome" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfStockholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DivestitureDetails" xlink:href="irbt-20191228.xsd#DivestitureDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DivestitureNotes" xlink:href="irbt-20191228.xsd#DivestitureNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DocumentAndEntityInformation" xlink:href="irbt-20191228.xsd#DocumentAndEntityInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/EmployeeBenefitsDetails" xlink:href="irbt-20191228.xsd#EmployeeBenefitsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/EmployeeBenefitsNotes" xlink:href="irbt-20191228.xsd#EmployeeBenefitsNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurements" xlink:href="irbt-20191228.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables" xlink:href="irbt-20191228.xsd#FairValueMeasurementsConvertibleNoteTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsDetails" xlink:href="irbt-20191228.xsd#FairValueMeasurementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsTables" xlink:href="irbt-20191228.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxes" xlink:href="irbt-20191228.xsd#IncomeTaxes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesNarrativeDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesNetDeferredTaxAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesTables" xlink:href="irbt-20191228.xsd#IncomeTaxesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/Inventory" xlink:href="irbt-20191228.xsd#Inventory" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/InventoryDetails" xlink:href="irbt-20191228.xsd#InventoryDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/InventoryTables" xlink:href="irbt-20191228.xsd#InventoryTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesDetails" xlink:href="irbt-20191228.xsd#LeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:href="irbt-20191228.xsd#LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesNotes" xlink:href="irbt-20191228.xsd#LeasesNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesPolicies" xlink:href="irbt-20191228.xsd#LeasesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesTables" xlink:href="irbt-20191228.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:href="irbt-20191228.xsd#MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/NatureOfBusiness" xlink:href="irbt-20191228.xsd#NatureOfBusiness" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/NetIncomePerShareDetails" xlink:href="irbt-20191228.xsd#NetIncomePerShareDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipment" xlink:href="irbt-20191228.xsd#PropertyAndEquipment" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipment1Details" xlink:href="irbt-20191228.xsd#PropertyAndEquipment1Details" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipmentDetails" xlink:href="irbt-20191228.xsd#PropertyAndEquipmentDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipmentTables" xlink:href="irbt-20191228.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnaudited" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedDetails" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnauditedDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedTables" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnauditedTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionContractBalancesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionContractBalancesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionDisaggregationOfRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionInitialApplicationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionInitialApplicationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionNotes" xlink:href="irbt-20191228.xsd#RevenueRecognitionNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies" xlink:href="irbt-20191228.xsd#RevenueRecognitionPracticalExpedientsPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionSignificantJudgmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies" xlink:href="irbt-20191228.xsd#RevenueRecognitionSignificantJudgmentsPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ShortTermInvestmentsDetails" xlink:href="irbt-20191228.xsd#ShortTermInvestmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensation" xlink:href="irbt-20191228.xsd#StockBasedCompensation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationEsppDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationEsppDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationNarrativeDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationRsusAndPsusDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockCompExpenseClassificationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsAssumptionsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationTables" xlink:href="irbt-20191228.xsd#StockBasedCompensationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockholdersEquity" xlink:href="irbt-20191228.xsd#StockholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockholdersEquityDetails" xlink:href="irbt-20191228.xsd#StockholdersEquityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/WorkingCapitalFacilities" xlink:href="irbt-20191228.xsd#WorkingCapitalFacilities" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/WorkingCapitalFacilitiesDetails" xlink:href="irbt-20191228.xsd#WorkingCapitalFacilitiesDetails" xlink:type="simple" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/AccountsReceivableAllowancesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/AccruedExpenses" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/AccruedExpensesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent_951e22b3-4d92-3a68-fbe0-4d82242098f2" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualCurrent_951e22b3-4d92-3a68-fbe0-4d82242098f2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_97bcccc6-0b4c-72bb-b768-8e5af9134cd2" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_97bcccc6-0b4c-72bb-b768-8e5af9134cd2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="loc_us-gaap_AccruedBonusesCurrent_4c1167b0-8f54-3c1e-8d26-2910689e5252" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_AccruedBonusesCurrent_4c1167b0-8f54-3c1e-8d26-2910689e5252" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccruedSalesTax" xlink:label="loc_irbt_AccruedSalesTax_36303d4b-c366-2f30-0894-1ecfa09366c7" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_irbt_AccruedSalesTax_36303d4b-c366-2f30-0894-1ecfa09366c7" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccruedDirectFulfillmentCosts" xlink:label="loc_irbt_AccruedDirectFulfillmentCosts_3a4523e6-90d9-36db-e39f-1ecfa01662a7" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_irbt_AccruedDirectFulfillmentCosts_3a4523e6-90d9-36db-e39f-1ecfa01662a7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_b91d2f01-85c2-f9fb-3250-26a4b1b39c5e" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_b91d2f01-85c2-f9fb-3250-26a4b1b39c5e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_ebb58523-69aa-44bb-767e-06e9f026a3b8" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_ebb58523-69aa-44bb-767e-06e9f026a3b8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_fa7787c9-a33c-d084-bb97-5e2455f77a4c" xlink:type="locator" />
    <link:calculationArc order="8" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_fa7787c9-a33c-d084-bb97-5e2455f77a4c" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/AccruedExpensesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsNotes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsProFormaDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:type="locator" />
    <link:calculationArc order="1" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_6952ede2-eaeb-60b9-5b91-10fcfab3bd45" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_6952ede2-eaeb-60b9-5b91-10fcfab3bd45" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_c08fe56b-a797-3abf-0722-1ecfa09b5185" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_c08fe56b-a797-3abf-0722-1ecfa09b5185" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_0e2633de-0303-3391-6128-b729f9398b24" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_0e2633de-0303-3391-6128-b729f9398b24" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ed536db1-48c2-6a76-6bce-2b5b51b285fe" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ed536db1-48c2-6a76-6bce-2b5b51b285fe" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_05d93b57-3f76-323b-8b13-07dc435183c2" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_89be327a-de9c-56c6-b3d1-10ec3b8a5f9b" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_89be327a-de9c-56c6-b3d1-10ec3b8a5f9b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_16e3deda-1ea5-327e-60bc-c233750182b4" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_16e3deda-1ea5-327e-60bc-c233750182b4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9bf4b8f8-c1f8-fd9f-385b-faef19385e38" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9bf4b8f8-c1f8-fd9f-385b-faef19385e38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_2b45a640-6b3e-a8a9-fe33-8d916bef202d" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_2b45a640-6b3e-a8a9-fe33-8d916bef202d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_95bf2e21-d683-f631-e8d8-3f776da44066" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_95bf2e21-d683-f631-e8d8-3f776da44066" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_89be327a-de9c-56c6-b3d1-10ec3b8a5f9b" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_89be327a-de9c-56c6-b3d1-10ec3b8a5f9b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_16e3deda-1ea5-327e-60bc-c233750182b4" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_16e3deda-1ea5-327e-60bc-c233750182b4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9bf4b8f8-c1f8-fd9f-385b-faef19385e38" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9bf4b8f8-c1f8-fd9f-385b-faef19385e38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_95bf2e21-d683-f631-e8d8-3f776da44066" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_95bf2e21-d683-f631-e8d8-3f776da44066" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_55188721-87d9-50ce-55f8-7f577f696dd3" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_55188721-87d9-50ce-55f8-7f577f696dd3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_2b45a640-6b3e-a8a9-fe33-8d916bef202d" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_2b45a640-6b3e-a8a9-fe33-8d916bef202d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_16015058-a7c0-a094-234b-9ebb33fa989f" xlink:type="locator" />
    <link:calculationArc order="8" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_0d84ac37-0ae5-4e79-9854-1ecf9ff8f46f" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_16015058-a7c0-a094-234b-9ebb33fa989f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_0bc2ad6f-4832-8740-8753-9ea1eda8f0e5" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_0bc2ad6f-4832-8740-8753-9ea1eda8f0e5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ed536db1-48c2-6a76-6bce-2b5b51b285fe" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_1951b824-dedf-abc1-7e10-478d006c1492" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_ed536db1-48c2-6a76-6bce-2b5b51b285fe" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingencies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDue" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_e71cbb67-0324-15b7-66dc-376e90f3ca60" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_e71cbb67-0324-15b7-66dc-376e90f3ca60" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_1f2c68db-a374-1412-5f1f-4edca1431bbb" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_1f2c68db-a374-1412-5f1f-4edca1431bbb" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_832fb73d-9886-a0dd-5905-8e2ec54304d6" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_832fb73d-9886-a0dd-5905-8e2ec54304d6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_398384fb-b756-b11a-1ea4-5a5cd4372c82" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_398384fb-b756-b11a-1ea4-5a5cd4372c82" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_f2a573e7-27e5-db11-63c6-c460733b5ea3" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_f2a573e7-27e5-db11-63c6-c460733b5ea3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_4cf71329-74d6-54f3-cadb-acb7f1063f36" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_acfb1bbb-4a5b-18c4-ab71-d62ae0aecfa0" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_4cf71329-74d6-54f3-cadb-acb7f1063f36" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetails1" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetailsTextual" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" 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_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_9c889623-7b4f-c89a-bbb3-2bc9fb9ad9f5" 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_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:to="loc_us-gaap_AccountsPayableCurrent_9c889623-7b4f-c89a-bbb3-2bc9fb9ad9f5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" 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_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_c90cf113-b51b-4312-22d0-4adb9883d309" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent_2555b3ac-9c93-b2c5-236e-a9f819e1e0df" 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_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:to="loc_us-gaap_DeferredRevenueCurrent_2555b3ac-9c93-b2c5-236e-a9f819e1e0df" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_dd41e762-f7ac-df9a-4912-590eca3f6a48" 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_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_LiabilitiesNoncurrent_dd41e762-f7ac-df9a-4912-590eca3f6a48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d18f979c-644d-9e92-9e89-21cfd1312948" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_dd41e762-f7ac-df9a-4912-590eca3f6a48" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_d18f979c-644d-9e92-9e89-21cfd1312948" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_64993a75-9b0c-349a-1011-cc5a81c58412" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_dd41e762-f7ac-df9a-4912-590eca3f6a48" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_64993a75-9b0c-349a-1011-cc5a81c58412" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_8c850143-cd0c-0f85-9038-e19d8c4f7808" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_dd41e762-f7ac-df9a-4912-590eca3f6a48" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_8c850143-cd0c-0f85-9038-e19d8c4f7808" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_d7f1ad03-6ed4-706a-15fc-eae794dee33a" xlink:to="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_928e20af-e738-4a2d-05b8-cf88fed11953" 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_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_PreferredStockValue_928e20af-e738-4a2d-05b8-cf88fed11953" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_f05ab245-2bd1-7865-e7ed-1461a5a6155f" 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_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_CommonStockValue_f05ab245-2bd1-7865-e7ed-1461a5a6155f" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_9a00ddef-ccc2-f99c-735a-66b1e1849bbf" 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_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_9a00ddef-ccc2-f99c-735a-66b1e1849bbf" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_62305d8f-d807-0fe8-d0ab-f2c2b3d03011" 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_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_62305d8f-d807-0fe8-d0ab-f2c2b3d03011" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_988c1346-b444-a867-fe80-f3aec1443d54" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_4b9904d8-8624-0dbb-a949-29ff2cf808a8" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_988c1346-b444-a867-fe80-f3aec1443d54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_44863786-cbc4-bac4-e070-0a1f19314584" 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_44863786-cbc4-bac4-e070-0a1f19314584" xlink:to="loc_us-gaap_LiabilitiesNoncurrent_dd41e762-f7ac-df9a-4912-590eca3f6a48" xlink:type="arc" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_44863786-cbc4-bac4-e070-0a1f19314584" xlink:to="loc_us-gaap_LiabilitiesCurrent_30dca50d-a7bd-cff0-949a-3d7ae869c50d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" 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_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_AssetsCurrent_0b3bd361-d592-2906-279e-2682647fdd27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_1de780cc-9607-daa3-0bed-03c88ae94769" 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_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_1de780cc-9607-daa3-0bed-03c88ae94769" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesCurrent_e7486c7f-4b4f-6b90-afb9-63828afa66f9" 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_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesCurrent_e7486c7f-4b4f-6b90-afb9-63828afa66f9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsAndOtherReceivablesNetCurrent" xlink:label="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_0ae8fd7c-c7fc-4ed0-1719-a62b1bcb2109" 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_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_0ae8fd7c-c7fc-4ed0-1719-a62b1bcb2109" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_cc720f44-4c90-5acc-2e7e-b88e80f2af28" 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_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_InventoryNet_cc720f44-4c90-5acc-2e7e-b88e80f2af28" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaap_OtherAssetsCurrent_7832082e-fa39-48cc-a655-249c101debf9" 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_0b3bd361-d592-2906-279e-2682647fdd27" xlink:to="loc_us-gaap_OtherAssetsCurrent_7832082e-fa39-48cc-a655-249c101debf9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" 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_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_dcf3df0d-2155-35f6-715d-83a9bc9cf3fb" 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_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_dcf3df0d-2155-35f6-715d-83a9bc9cf3fb" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_60654fa3-82c2-3e38-ce88-436acda713ac" 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_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_60654fa3-82c2-3e38-ce88-436acda713ac" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" 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_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_Goodwill_37b440e2-656c-b624-0688-b7cf681bf981" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e87bd6a3-2026-a858-f41a-bc281e5d594b" 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_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e87bd6a3-2026-a858-f41a-bc281e5d594b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_bd8545de-cfc2-6f31-bff6-ed0d4012c357" 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_17ef3f41-42f7-52c0-cba1-93e7e0e1116a" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_bd8545de-cfc2-6f31-bff6-ed0d4012c357" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_5c8b3520-1ca2-0a91-0912-70d62831826c" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" 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_5c8b3520-1ca2-0a91-0912-70d62831826c" xlink:to="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_71d11517-34f8-505e-4c4b-e25ef3111aee" 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_5c8b3520-1ca2-0a91-0912-70d62831826c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_71d11517-34f8-505e-4c4b-e25ef3111aee" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_397a475b-0af5-f3eb-f91e-9518c9a0cfd9" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_5c8b3520-1ca2-0a91-0912-70d62831826c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_397a475b-0af5-f3eb-f91e-9518c9a0cfd9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_93de04c3-ace0-a2f0-c272-f037b3709822" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_5c8b3520-1ca2-0a91-0912-70d62831826c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_93de04c3-ace0-a2f0-c272-f037b3709822" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_bab93ab9-d249-c671-e786-575d618bea25" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_5c8b3520-1ca2-0a91-0912-70d62831826c" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_bab93ab9-d249-c671-e786-575d618bea25" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_b2425514-ebf2-89bc-8a6a-e6b6edfea6c3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" 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_b2425514-ebf2-89bc-8a6a-e6b6edfea6c3" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_ebef248a-da21-637d-9d28-3d42ff90e8e2" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_ebef248a-da21-637d-9d28-3d42ff90e8e2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainLossOnSaleOfEquityInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfEquityInvestments_8673ac89-dde9-87f7-6567-8966a8ff5e43" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_GainLossOnSaleOfEquityInvestments_8673ac89-dde9-87f7-6567-8966a8ff5e43" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount" xlink:label="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_3780ca4f-adc1-a78c-5fcb-b636cc60c0bd" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_3780ca4f-adc1-a78c-5fcb-b636cc60c0bd" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_f0b9d825-b0b9-37fd-4d25-9294a8598890" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_ShareBasedCompensation_f0b9d825-b0b9-37fd-4d25-9294a8598890" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_0074e2ce-7b7b-56f1-34ed-f9d5bd5d1c3d" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_0074e2ce-7b7b-56f1-34ed-f9d5bd5d1c3d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:label="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_1571e7d6-d666-48e2-395f-6e58ea563df3" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_1571e7d6-d666-48e2-395f-6e58ea563df3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_09b7b41a-f5a1-c45e-d61b-846fff462802" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_09b7b41a-f5a1-c45e-d61b-846fff462802" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_f2b34f8d-2445-12ee-2c68-fa0c5409d5e0" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_f2b34f8d-2445-12ee-2c68-fa0c5409d5e0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_5550ae9d-a6e2-fc35-fc50-54521e2bfb5d" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_5550ae9d-a6e2-fc35-fc50-54521e2bfb5d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_792166b2-b561-55ef-12fd-ca8b50f64a38" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_792166b2-b561-55ef-12fd-ca8b50f64a38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_39e086ce-b837-ec97-eac8-f7ac190f32e2" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_39e086ce-b837-ec97-eac8-f7ac190f32e2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_6cfa827d-143a-2a96-d20d-4ed339c92bf3" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_6cfa827d-143a-2a96-d20d-4ed339c92bf3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_d7de2883-fea4-6e7c-2c8b-7fee9aa34369" 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_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_d7de2883-fea4-6e7c-2c8b-7fee9aa34369" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" 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_b2425514-ebf2-89bc-8a6a-e6b6edfea6c3" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0f8df60b-841f-6df5-83c3-e4049d366459" 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_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0f8df60b-841f-6df5-83c3-e4049d366459" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_b5cf64b6-8899-5a9a-328a-4f0a312ae378" 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_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_b5cf64b6-8899-5a9a-328a-4f0a312ae378" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities" xlink:label="loc_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_bbd6beb3-c1e3-2891-b860-02c6b5ed4d80" 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_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_bbd6beb3-c1e3-2891-b860-02c6b5ed4d80" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_cbde70f2-30a7-61b4-c931-8ab720effe83" 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_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_cbde70f2-30a7-61b4-c931-8ab720effe83" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_6abb14d9-7978-302d-af6b-dbfc88f76bf2" 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_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_6abb14d9-7978-302d-af6b-dbfc88f76bf2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireAvailableForSaleSecurities" xlink:label="loc_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_b978ae77-fef7-cb46-afee-f23498c1fbe0" xlink:type="locator" />
    <link:calculationArc order="6" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_b978ae77-fef7-cb46-afee-f23498c1fbe0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_83cf65a5-9616-b748-1d6c-92f0b7da6e69" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0f07a806-a2da-6d18-a7a9-d734fad1f3b0" xlink:to="loc_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_83cf65a5-9616-b748-1d6c-92f0b7da6e69" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" 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_b2425514-ebf2-89bc-8a6a-e6b6edfea6c3" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_07e50027-f2db-6d1b-93ed-b22d6bd39351" 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_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_07e50027-f2db-6d1b-93ed-b22d6bd39351" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans_b130e83a-7e35-8950-f084-78ccb28f2eab" 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_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_ProceedsFromStockPlans_b130e83a-7e35-8950-f084-78ccb28f2eab" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_3f804297-91a1-3939-541d-a39b6288c9f9" 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_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_3f804297-91a1-3939-541d-a39b6288c9f9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:label="loc_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_1d038ec0-2676-95f8-b6b9-3348b41921cc" 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_1efd93c0-bb90-2a64-a997-3a70afaa3faa" xlink:to="loc_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_1d038ec0-2676-95f8-b6b9-3348b41921cc" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_32f0c8eb-accb-9ab7-5d53-b9d2845af404" 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_b2425514-ebf2-89bc-8a6a-e6b6edfea6c3" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_32f0c8eb-accb-9ab7-5d53-b9d2845af404" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_3727A64761060AB0535520A688A166AC_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_NetIncomeLoss_3727A64761060AB0535520A688A166AC_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_3727A64761060AB0535520A688A166AC_ebef248a-da21-637d-9d28-3d42ff90e8e2" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_3727A64761060AB0535520A688A166AC_ebef248a-da21-637d-9d28-3d42ff90e8e2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainLossOnSaleOfEquityInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfEquityInvestments_3727A64761060AB0535520A688A166AC_8673ac89-dde9-87f7-6567-8966a8ff5e43" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_GainLossOnSaleOfEquityInvestments_3727A64761060AB0535520A688A166AC_8673ac89-dde9-87f7-6567-8966a8ff5e43" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount" xlink:label="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_3727A64761060AB0535520A688A166AC_3780ca4f-adc1-a78c-5fcb-b636cc60c0bd" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_3727A64761060AB0535520A688A166AC_3780ca4f-adc1-a78c-5fcb-b636cc60c0bd" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_3727A64761060AB0535520A688A166AC_f0b9d825-b0b9-37fd-4d25-9294a8598890" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_ShareBasedCompensation_3727A64761060AB0535520A688A166AC_f0b9d825-b0b9-37fd-4d25-9294a8598890" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_3727A64761060AB0535520A688A166AC_0074e2ce-7b7b-56f1-34ed-f9d5bd5d1c3d" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_3727A64761060AB0535520A688A166AC_0074e2ce-7b7b-56f1-34ed-f9d5bd5d1c3d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:label="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_3727A64761060AB0535520A688A166AC_1571e7d6-d666-48e2-395f-6e58ea563df3" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_3727A64761060AB0535520A688A166AC_1571e7d6-d666-48e2-395f-6e58ea563df3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_3727A64761060AB0535520A688A166AC_09b7b41a-f5a1-c45e-d61b-846fff462802" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_3727A64761060AB0535520A688A166AC_09b7b41a-f5a1-c45e-d61b-846fff462802" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_3727A64761060AB0535520A688A166AC_f2b34f8d-2445-12ee-2c68-fa0c5409d5e0" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_3727A64761060AB0535520A688A166AC_f2b34f8d-2445-12ee-2c68-fa0c5409d5e0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_3727A64761060AB0535520A688A166AC_5550ae9d-a6e2-fc35-fc50-54521e2bfb5d" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_3727A64761060AB0535520A688A166AC_5550ae9d-a6e2-fc35-fc50-54521e2bfb5d" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_3727A64761060AB0535520A688A166AC_792166b2-b561-55ef-12fd-ca8b50f64a38" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_3727A64761060AB0535520A688A166AC_792166b2-b561-55ef-12fd-ca8b50f64a38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_3727A64761060AB0535520A688A166AC_39e086ce-b837-ec97-eac8-f7ac190f32e2" 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_3727A64761060AB0535520A688A166AC_ce0d7b63-a366-bc9b-79e1-780981e428fe" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_3727A64761060AB0535520A688A166AC_39e086ce-b837-ec97-eac8-f7ac190f32e2" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" 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_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:to="loc_us-gaap_OperatingIncomeLoss_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_98c25af7-47ba-69a3-12c4-e52bd51b359e" 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_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:to="loc_us-gaap_GrossProfit_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_425ada39-f194-a279-47ac-dd09cf899fb1" 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_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:to="loc_us-gaap_Revenues_425ada39-f194-a279-47ac-dd09cf899fb1" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Costofproductrevenue" xlink:label="loc_irbt_Costofproductrevenue_ea8773f6-cd2b-159d-6a82-1ecf9fcdaae9" 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_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:to="loc_irbt_Costofproductrevenue_ea8773f6-cd2b-159d-6a82-1ecf9fcdaae9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_81317fcb-8d44-cc6a-bffd-b6d0ae4858aa" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_98c25af7-47ba-69a3-12c4-e52bd51b359e" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_81317fcb-8d44-cc6a-bffd-b6d0ae4858aa" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaap_OperatingExpenses_56807cce-1c23-b2ed-01fd-e029fa0d6e79" 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_8db01d6d-ae17-523f-94b9-8ab4add4a22e" xlink:to="loc_us-gaap_OperatingExpenses_56807cce-1c23-b2ed-01fd-e029fa0d6e79" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_ef2ac9e8-006f-b467-3389-9a8ceec4bee5" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_56807cce-1c23-b2ed-01fd-e029fa0d6e79" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_ef2ac9e8-006f-b467-3389-9a8ceec4bee5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaap_SellingAndMarketingExpense_731c29d0-c256-edba-6ba9-ec31b7c2ca7b" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_56807cce-1c23-b2ed-01fd-e029fa0d6e79" xlink:to="loc_us-gaap_SellingAndMarketingExpense_731c29d0-c256-edba-6ba9-ec31b7c2ca7b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_58462a12-ec5e-da2d-89ad-2d8b2ce76259" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_56807cce-1c23-b2ed-01fd-e029fa0d6e79" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_58462a12-ec5e-da2d-89ad-2d8b2ce76259" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmortizationofIntangibleAssetsNonproduction" xlink:label="loc_irbt_AmortizationofIntangibleAssetsNonproduction_21e4bb8f-4e55-a0e5-b7d3-1ecfa094f75b" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingExpenses_56807cce-1c23-b2ed-01fd-e029fa0d6e79" xlink:to="loc_irbt_AmortizationofIntangibleAssetsNonproduction_21e4bb8f-4e55-a0e5-b7d3-1ecfa094f75b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_28fe77ae-e122-e428-d718-aff2ad445bc8" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_28fe77ae-e122-e428-d718-aff2ad445bc8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" 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_e170ce1e-c3a8-e8ee-88b0-37e8dd7b1d11" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_3549c1c0-2f2a-e44b-026b-b4042153e489" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold_3549c1c0-2f2a-e44b-026b-b4042153e489" xlink:to="loc_irbt_Costofproductrevenue_ea8773f6-cd2b-159d-6a82-1ecf9fcdaae9" xlink:type="arc" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold_3549c1c0-2f2a-e44b-026b-b4042153e489" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_81317fcb-8d44-cc6a-bffd-b6d0ae4858aa" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/DivestitureDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/DivestitureNotes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/DocumentAndEntityInformation" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/EmployeeBenefitsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/EmployeeBenefitsNotes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/FairValueMeasurements" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_d2b58163-9b70-93d8-8da6-4d47d94fdd3f" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_c498d065-e002-c8b0-aba8-6aaec8302ba7" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure_d2b58163-9b70-93d8-8da6-4d47d94fdd3f" xlink:to="loc_us-gaap_DerivativeLiabilities_c498d065-e002-c8b0-aba8-6aaec8302ba7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_a0a5801b-c8ce-1793-dd5f-edbcde4cc5a3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_554f95d2-cb4f-eb2c-68b3-7e12c8578a72" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_a0a5801b-c8ce-1793-dd5f-edbcde4cc5a3" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_554f95d2-cb4f-eb2c-68b3-7e12c8578a72" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_6f3a57ea-5dc8-2042-ec7d-a8820e571190" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_a0a5801b-c8ce-1793-dd5f-edbcde4cc5a3" xlink:to="loc_us-gaap_AvailableForSaleSecurities_6f3a57ea-5dc8-2042-ec7d-a8820e571190" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NotesReceivableFairValueDisclosure" xlink:label="loc_us-gaap_NotesReceivableFairValueDisclosure_3129997c-7617-4776-f4c8-a999b37dbaf2" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_a0a5801b-c8ce-1793-dd5f-edbcde4cc5a3" xlink:to="loc_us-gaap_NotesReceivableFairValueDisclosure_3129997c-7617-4776-f4c8-a999b37dbaf2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_05d1a9f5-40b5-5876-afca-b2b8e7f078c9" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_a0a5801b-c8ce-1793-dd5f-edbcde4cc5a3" xlink:to="loc_us-gaap_DerivativeAssets_05d1a9f5-40b5-5876-afca-b2b8e7f078c9" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e87bd6a3-2026-a858-f41a-bc281e5d594b" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_e11e8784-8f2d-ca3c-a9e8-a8115d54520c" 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_e87bd6a3-2026-a858-f41a-bc281e5d594b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_e11e8784-8f2d-ca3c-a9e8-a8115d54520c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_65140cb5-12a8-2030-97e2-fa6daceadf40" 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_e87bd6a3-2026-a858-f41a-bc281e5d594b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_65140cb5-12a8-2030-97e2-fa6daceadf40" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_dbb037c2-04c0-fa14-65e6-8ccd12d2a855" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_dbb037c2-04c0-fa14-65e6-8ccd12d2a855" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_7f37ab3b-992e-e1ba-f578-2c503524d7e4" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_7f37ab3b-992e-e1ba-f578-2c503524d7e4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1007d9fe-6d83-c6c6-eef9-c29803b14ec7" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_ad87dc87-7206-5d76-a1ae-6cecdf90521c" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_1007d9fe-6d83-c6c6-eef9-c29803b14ec7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_666ca9f0-28f1-b21a-025e-36222808a6c3" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_db02e614-93e7-eddf-abe0-a58cca48e685" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_db02e614-93e7-eddf-abe0-a58cca48e685" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_ca5c17e6-16a0-bee8-1413-d316d82a8942" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_ca5c17e6-16a0-bee8-1413-d316d82a8942" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_8caef893-a841-2be2-863f-e20b53026f02" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_3421bed6-296e-da4e-f0e9-a2a8fa1f6d19" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_8caef893-a841-2be2-863f-e20b53026f02" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_7c7e16b8-0aa9-c1c4-f1b1-272374ca83dc" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_7c7e16b8-0aa9-c1c4-f1b1-272374ca83dc" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_f57a32ed-0dd0-7e89-043f-8fdc81833b87" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_f57a32ed-0dd0-7e89-043f-8fdc81833b87" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_c4fdeb46-4aee-508e-a0bc-a3b116ae2542" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_c4fdeb46-4aee-508e-a0bc-a3b116ae2542" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities" xlink:label="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_54785d8a-952c-3257-3935-272224be412f" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_54785d8a-952c-3257-3935-272224be412f" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_3ff755b7-7ca8-7a95-e823-1ecfa0982257" xlink:type="locator" />
    <link:calculationArc order="5" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_3ff755b7-7ca8-7a95-e823-1ecfa0982257" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_967768e1-37b4-8efc-6da1-2719af0cb8d8" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_967768e1-37b4-8efc-6da1-2719af0cb8d8" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_d6fe8532-3a18-dfc2-0515-1ecf9fe0282f" xlink:type="locator" />
    <link:calculationArc order="7" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_d6fe8532-3a18-dfc2-0515-1ecf9fe0282f" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_cb897254-aa28-0b81-c8b1-1ecfa09670a2" xlink:type="locator" />
    <link:calculationArc order="8" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_cb897254-aa28-0b81-c8b1-1ecfa09670a2" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_1882AB8E93555431A6F22F91ABDA0A53" xlink:type="locator" />
    <link:calculationArc order="9" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_1882AB8E93555431A6F22F91ABDA0A53" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_EEA3DBA722761E9321AC2F92E741E88C" xlink:type="locator" />
    <link:calculationArc order="10" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_EEA3DBA722761E9321AC2F92E741E88C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_a0223de0-196e-53c5-0690-f9f0d2ab9105" xlink:type="locator" />
    <link:calculationArc order="11" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_a0223de0-196e-53c5-0690-f9f0d2ab9105" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_49a08e86-47b2-01fa-94cc-0320e102ec63" xlink:type="locator" />
    <link:calculationArc order="12" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_8aacea24-b78b-d0a4-5334-45b52d9eb0b2" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_49a08e86-47b2-01fa-94cc-0320e102ec63" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_3ce82195-ed3e-f261-3529-b3a868ecf6c4" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_3ce82195-ed3e-f261-3529-b3a868ecf6c4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_89ebd542-78ee-71d0-be95-65de1bb3ef82" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_489b61b6-7c39-240c-7f68-1c1675bca3b7" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_89ebd542-78ee-71d0-be95-65de1bb3ef82" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_0bdbea13-bfd8-228d-43ea-fae0c1330aaa" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_0bdbea13-bfd8-228d-43ea-fae0c1330aaa" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_6e6a9bd5-5e5f-2e91-4256-2c48e664dc5c" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_6e6a9bd5-5e5f-2e91-4256-2c48e664dc5c" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_1add1f0b-0dab-17fb-48dc-cbdae374835d" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_1add1f0b-0dab-17fb-48dc-cbdae374835d" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities" xlink:label="loc_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_5E5892E399A7A34AC47F15FE23BE5D56" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_5E5892E399A7A34AC47F15FE23BE5D56" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_9fd2e560-0aac-aea4-6be8-8b4e4e77d184" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_9fd2e560-0aac-aea4-6be8-8b4e4e77d184" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_de5e795f-0165-d088-d22e-d01ff8d44317" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_de5e795f-0165-d088-d22e-d01ff8d44317" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_a87b79d6-1ed8-a71d-1843-5c0769713f28" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_e54f6543-25d5-ceb9-ff71-ca6ba1b37623" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_a87b79d6-1ed8-a71d-1843-5c0769713f28" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_55b78dfc-faa8-3c71-752a-e6857318d516" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_55b78dfc-faa8-3c71-752a-e6857318d516" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_06fdd8fa-20aa-c385-b288-61c16515fae0" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_e6f5d9f5-2430-5e17-896c-5e4d69815366" xlink:to="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_06fdd8fa-20aa-c385-b288-61c16515fae0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_5da8fd5a-89f1-3049-e781-200c2d180554" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_0bdbea13-bfd8-228d-43ea-fae0c1330aaa" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_5da8fd5a-89f1-3049-e781-200c2d180554" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesLeasingArrangements" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_e577292a-42b5-1be6-5996-8a37e2ebd0b2" xlink:type="locator" />
    <link:calculationArc order="3" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_0bdbea13-bfd8-228d-43ea-fae0c1330aaa" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_e577292a-42b5-1be6-5996-8a37e2ebd0b2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_4c5a1085-469a-cd6c-e26f-53287b62aa26" xlink:type="locator" />
    <link:calculationArc order="4" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_0bdbea13-bfd8-228d-43ea-fae0c1330aaa" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_4c5a1085-469a-cd6c-e26f-53287b62aa26" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/Inventory" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/InventoryDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_cc720f44-4c90-5acc-2e7e-b88e80f2af28" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_a142eb63-af8d-4212-6321-d7c0ac27f958" 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_cc720f44-4c90-5acc-2e7e-b88e80f2af28" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_a142eb63-af8d-4212-6321-d7c0ac27f958" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_2dee2782-8369-5635-44bf-51d0e8aa0f1e" 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_cc720f44-4c90-5acc-2e7e-b88e80f2af28" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_2dee2782-8369-5635-44bf-51d0e8aa0f1e" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/InventoryTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/LeasesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_5ad4ca01-bc52-b198-b1fd-3cded668d167" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_5ad4ca01-bc52-b198-b1fd-3cded668d167" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_9b040bc1-f43c-735d-05f7-679f319d2bb6" xlink:type="locator" />
    <link:calculationArc order="2" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_9b040bc1-f43c-735d-05f7-679f319d2bb6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_2f0ec234-4f20-7099-efb3-3c0ab4d024dd" xlink:type="locator" />
    <link:calculationArc order="3" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_2f0ec234-4f20-7099-efb3-3c0ab4d024dd" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_1ed751b1-5f94-4f6f-41e9-ef873c9f2bab" xlink:type="locator" />
    <link:calculationArc order="4" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_1ed751b1-5f94-4f6f-41e9-ef873c9f2bab" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8a8de21f-aadc-3af7-8c96-d54cf42b401b" xlink:type="locator" />
    <link:calculationArc order="5" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8a8de21f-aadc-3af7-8c96-d54cf42b401b" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_b411eec9-2a0a-356b-e751-bd0680ab4d58" xlink:type="locator" />
    <link:calculationArc order="6" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1c2cd15f-6a97-015f-b126-1d0a0750698b" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_b411eec9-2a0a-356b-e751-bd0680ab4d58" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/LeasesNotes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/LeasesPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/LeasesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/NatureOfBusiness" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/NetIncomePerShareDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_8c9389ea-1fbb-7e45-ce1f-5a1d89572c0d" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_72ad9ebf-e829-cc37-8382-628e47c585ab" 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_8c9389ea-1fbb-7e45-ce1f-5a1d89572c0d" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_72ad9ebf-e829-cc37-8382-628e47c585ab" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_fbdbb03d-8583-701f-d6e2-69f8229c6051" 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_8c9389ea-1fbb-7e45-ce1f-5a1d89572c0d" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_fbdbb03d-8583-701f-d6e2-69f8229c6051" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipment" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipment1Details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_94cd7971-9d17-1c6e-6642-d4d38fb682b6" xlink:type="locator" />
    <link:calculationArc order="1" weight="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_94cd7971-9d17-1c6e-6642-d4d38fb682b6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_7b7a3a8d-eb3d-0c85-68cc-b3d4d184ff23" xlink:type="locator" />
    <link:calculationArc order="2" weight="-1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_4246ec24-1a4c-19dd-57c9-32d4a8e0cbaa" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_7b7a3a8d-eb3d-0c85-68cc-b3d4d184ff23" xlink:type="arc" />
  </link:calculationLink>
  <link:calculationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipmentDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipmentTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnaudited" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnauditedDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnauditedTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionContractBalancesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionInitialApplicationDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionNotes" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/ShortTermInvestmentsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensation" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationEsppDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationNarrativeDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockholdersEquity" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/StockholdersEquityDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/WorkingCapitalFacilities" xlink:type="extended" />
  <link:calculationLink xlink:role="http://www.irobot.com/role/WorkingCapitalFacilitiesDetails" xlink:type="extended" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>irbt-20191228_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.irobot.com/role/AccountsReceivableAllowancesDetails" xlink:href="irbt-20191228.xsd#AccountsReceivableAllowancesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpenses" xlink:href="irbt-20191228.xsd#AccruedExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpensesDetails" xlink:href="irbt-20191228.xsd#AccruedExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpensesTables" xlink:href="irbt-20191228.xsd#AccruedExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsNotes" xlink:href="irbt-20191228.xsd#BusinessCombinationsNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsProFormaDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsProFormaDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsRobopolisAcquisitionDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsTables" xlink:href="irbt-20191228.xsd#BusinessCombinationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingencies" xlink:href="irbt-20191228.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails1" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetailsTextual" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetailsTextual" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesTables" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedBalanceSheets" xlink:href="irbt-20191228.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="irbt-20191228.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome" xlink:href="irbt-20191228.xsd#ConsolidatedStatementOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfIncome" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfStockholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DivestitureDetails" xlink:href="irbt-20191228.xsd#DivestitureDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DivestitureNotes" xlink:href="irbt-20191228.xsd#DivestitureNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DocumentAndEntityInformation" xlink:href="irbt-20191228.xsd#DocumentAndEntityInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/EmployeeBenefitsDetails" xlink:href="irbt-20191228.xsd#EmployeeBenefitsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/EmployeeBenefitsNotes" xlink:href="irbt-20191228.xsd#EmployeeBenefitsNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurements" xlink:href="irbt-20191228.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables" xlink:href="irbt-20191228.xsd#FairValueMeasurementsConvertibleNoteTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsDetails" xlink:href="irbt-20191228.xsd#FairValueMeasurementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsTables" xlink:href="irbt-20191228.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxes" xlink:href="irbt-20191228.xsd#IncomeTaxes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesNarrativeDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesNetDeferredTaxAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesTables" xlink:href="irbt-20191228.xsd#IncomeTaxesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/Inventory" xlink:href="irbt-20191228.xsd#Inventory" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/InventoryDetails" xlink:href="irbt-20191228.xsd#InventoryDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/InventoryTables" xlink:href="irbt-20191228.xsd#InventoryTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesDetails" xlink:href="irbt-20191228.xsd#LeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:href="irbt-20191228.xsd#LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesNotes" xlink:href="irbt-20191228.xsd#LeasesNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesPolicies" xlink:href="irbt-20191228.xsd#LeasesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesTables" xlink:href="irbt-20191228.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:href="irbt-20191228.xsd#MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/NatureOfBusiness" xlink:href="irbt-20191228.xsd#NatureOfBusiness" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/NetIncomePerShareDetails" xlink:href="irbt-20191228.xsd#NetIncomePerShareDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipment" xlink:href="irbt-20191228.xsd#PropertyAndEquipment" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipment1Details" xlink:href="irbt-20191228.xsd#PropertyAndEquipment1Details" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipmentDetails" xlink:href="irbt-20191228.xsd#PropertyAndEquipmentDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipmentTables" xlink:href="irbt-20191228.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnaudited" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedDetails" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnauditedDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedTables" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnauditedTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionContractBalancesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionContractBalancesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionDisaggregationOfRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionInitialApplicationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionInitialApplicationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionNotes" xlink:href="irbt-20191228.xsd#RevenueRecognitionNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies" xlink:href="irbt-20191228.xsd#RevenueRecognitionPracticalExpedientsPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionSignificantJudgmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies" xlink:href="irbt-20191228.xsd#RevenueRecognitionSignificantJudgmentsPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ShortTermInvestmentsDetails" xlink:href="irbt-20191228.xsd#ShortTermInvestmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensation" xlink:href="irbt-20191228.xsd#StockBasedCompensation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationEsppDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationEsppDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationNarrativeDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationRsusAndPsusDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockCompExpenseClassificationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsAssumptionsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationTables" xlink:href="irbt-20191228.xsd#StockBasedCompensationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockholdersEquity" xlink:href="irbt-20191228.xsd#StockholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockholdersEquityDetails" xlink:href="irbt-20191228.xsd#StockholdersEquityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/WorkingCapitalFacilities" xlink:href="irbt-20191228.xsd#WorkingCapitalFacilities" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/WorkingCapitalFacilitiesDetails" xlink:href="irbt-20191228.xsd#WorkingCapitalFacilitiesDetails" 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.irobot.com/role/AccountsReceivableAllowancesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_AF7A8F0A246A25AF5B812F937EFD81FA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_AF7A8F0A246A25AF5B812F937EFD81FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_AF7A8F0A246A25AF5B812F937EFD81FA" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_AF7A8F0A246A25AF5B812F937EFD81FA" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforothercreditsandincentivesMember" xlink:label="loc_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" xlink:to="loc_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforproductreturnsMember" xlink:label="loc_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" xlink:to="loc_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:label="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:to="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDeductions" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/AccruedExpenses" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/AccruedExpensesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/AccruedExpensesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/BusinessCombinationsNotes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/BusinessCombinationsProFormaDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_A70F4BC247C571D87801359C79EB5721" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_A70F4BC247C571D87801359C79EB5721" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_A70F4BC247C571D87801359C79EB5721" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_A70F4BC247C571D87801359C79EB5721" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_EF121798CDEEE56FC21A359C79EBBF31" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786" xlink:to="loc_us-gaap_DistributionRightsMember_EF121798CDEEE56FC21A359C79EBBF31" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_3590F4628BA183C1CDCE359C79EC064A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786" xlink:to="loc_us-gaap_CustomerRelationshipsMember_3590F4628BA183C1CDCE359C79EC064A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_CD328DE409685C254A64359C79EC95C4" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_CD328DE409685C254A64359C79EC95C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_CEA54247B003BF32307E359C79ECE5D5" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_CEA54247B003BF32307E359C79ECE5D5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_586986ACEBB731528D76359C79ECE269_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_CEA54247B003BF32307E359C79ECE5D5" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_586986ACEBB731528D76359C79ECE269_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_586986ACEBB731528D76359C79ECE269" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_CEA54247B003BF32307E359C79ECE5D5" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_586986ACEBB731528D76359C79ECE269" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisMember" xlink:label="loc_irbt_RobopolisMember_2E251020DEF25D9A4193359C79EC0863" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_586986ACEBB731528D76359C79ECE269" xlink:to="loc_irbt_RobopolisMember_2E251020DEF25D9A4193359C79EC0863" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAcquiredFromAcquisition" xlink:label="loc_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_50FD5F33EDD0913226C4359C79ED3B39" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_50FD5F33EDD0913226C4359C79ED3B39" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_C59F210715F274699628359C79EE31AA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_C59F210715F274699628359C79EE31AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_C0EDE1C303C77CB58013359C79EE2F56" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_C0EDE1C303C77CB58013359C79EE2F56" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_A6B2023469F352E56DE1359C79EE62BC" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_Goodwill_A6B2023469F352E56DE1359C79EE62BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15A10BC1A2FA0D59687F359C79EE03E9" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15A10BC1A2FA0D59687F359C79EE03E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_562BE33C026FA5D1CC62359C79EE8417" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_562BE33C026FA5D1CC62359C79EE8417" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_046373495F387736CC4D359C79EEAC96" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_046373495F387736CC4D359C79EEAC96" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_5BF067B3EA525D46EEB8359C79EF679B" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_5BF067B3EA525D46EEB8359C79EF679B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_28DA14937C0654B1C560359C79EFF082" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_28DA14937C0654B1C560359C79EFF082" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_8B6ADD2336048A4BB06F359C79F0CF36" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_8B6ADD2336048A4BB06F359C79F0CF36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationMember" xlink:label="loc_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:to="loc_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisMember" xlink:label="loc_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:to="loc_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_15943F589C975DAC47613B192AE43A96" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_15943F589C975DAC47613B192AE43A96" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_15943F589C975DAC47613B192AE43A96" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_15943F589C975DAC47613B192AE43A96" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_B2510B3D887E3D52B3913B192AE5FD06" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447" xlink:to="loc_us-gaap_CustomerRelationshipsMember_B2510B3D887E3D52B3913B192AE5FD06" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_B25E070DB200B8E34EDB3B192AE5B2D4" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447" xlink:to="loc_us-gaap_DistributionRightsMember_B25E070DB200B8E34EDB3B192AE5B2D4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_8CFB08FCF8CEC2D27F783B192AE70571" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_Goodwill_8CFB08FCF8CEC2D27F783B192AE70571" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount" xlink:label="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/BusinessCombinationsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingencies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetails1" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetailsTextual" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/ConsolidatedBalanceSheets" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_10F7F07E22FECB1903F620A688F25776" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_StatementTable_10F7F07E22FECB1903F620A688F25776" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_10F7F07E22FECB1903F620A688F25776" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Costofproductrevenue" xlink:label="loc_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmortizationofIntangibleAssetsNonproduction" xlink:label="loc_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_BF9A9C37826E463F093620A688F64BF6" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_BF9A9C37826E463F093620A688F64BF6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_B89173D71E8A0884E46520A688F7F527" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:to="loc_us-gaap_EarningsPerShareBasic_B89173D71E8A0884E46520A688F7F527" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_A3C1DCBC820475753A3820A688F7A36D" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:to="loc_us-gaap_EarningsPerShareDiluted_A3C1DCBC820475753A3820A688F7A36D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_906CD9B9A7C7A2A561DA352C2F7A037F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_688DE3577311F06B2FA1352C2F787E00" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_906CD9B9A7C7A2A561DA352C2F7A037F" xlink:to="loc_us-gaap_StatementTable_688DE3577311F06B2FA1352C2F787E00" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_76FA0061615B135AE2C2352C2F79BAAE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_688DE3577311F06B2FA1352C2F787E00" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_76FA0061615B135AE2C2352C2F79BAAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_76FA0061615B135AE2C2352C2F79BAAE" xlink:to="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_76FA0061615B135AE2C2352C2F79BAAE" xlink:to="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_906CD9B9A7C7A2A561DA352C2F7A037F" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:label="loc_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueOther" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" xlink:label="loc_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" xlink:label="loc_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:type="locator" />
    <link:definitionArc order="14" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" xlink:type="locator" />
    <link:definitionArc order="15" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:type="locator" />
    <link:definitionArc order="16" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:type="locator" />
    <link:definitionArc order="17" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:type="locator" />
    <link:definitionArc order="18" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" xlink:type="locator" />
    <link:definitionArc order="19" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesFairValueLineItems" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:to="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:to="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:to="loc_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:to="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:to="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:to="loc_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeOptionMember" xlink:label="loc_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:to="loc_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeForwardMember" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:to="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:to="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:to="loc_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherCurrentAssetsMember" xlink:label="loc_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncurrentAssetsMember" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="loc_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="loc_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeTermOfContract" xlink:label="loc_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="loc_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeNotionalAmount" xlink:label="loc_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="loc_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeNetAbstract" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:to="loc_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:to="loc_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_E5F017867598708D4605355064C707C3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_HedgingDesignationAxis_E5F017867598708D4605355064C707C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_56E1CB493E79847A8D50355064C7D93B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_E5F017867598708D4605355064C707C3" xlink:to="loc_us-gaap_HedgingDesignationDomain_56E1CB493E79847A8D50355064C7D93B_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_56E1CB493E79847A8D50355064C7D93B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_E5F017867598708D4605355064C707C3" xlink:to="loc_us-gaap_HedgingDesignationDomain_56E1CB493E79847A8D50355064C7D93B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_477D85DA03C56449A99B355064C8A90D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_56E1CB493E79847A8D50355064C7D93B" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_477D85DA03C56449A99B355064C8A90D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_BD5BDA1190472520EAF5355064C8DF0D" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_srt_RangeAxis_BD5BDA1190472520EAF5355064C8DF0D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_BD5BDA1190472520EAF5355064C8DF0D" xlink:to="loc_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_BD5BDA1190472520EAF5355064C8DF0D" xlink:to="loc_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_E87C93262A7A8A9734E3355064C80CB5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8" xlink:to="loc_srt_MaximumMember_E87C93262A7A8A9734E3355064C80CB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_0330211EB3A7D139531A355064C9898F" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_0330211EB3A7D139531A355064C9898F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_0330211EB3A7D139531A355064C9898F" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_0330211EB3A7D139531A355064C9898F" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeForwardMember" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_39592CAB7A6E96CAC87D355064C90BB0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_39592CAB7A6E96CAC87D355064C90BB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_D064DD1BE61CA60C177D355064C92751" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_D064DD1BE61CA60C177D355064C92751" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_D064DD1BE61CA60C177D355064C92751" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_D064DD1BE61CA60C177D355064C92751" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_2C4236177D215D6CF282355064CA42AF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1" xlink:to="loc_us-gaap_SalesRevenueNetMember_2C4236177D215D6CF282355064CA42AF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_622D3CBF7276D5A778DB355064CA4543" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1" xlink:to="loc_us-gaap_CostOfSalesMember_622D3CBF7276D5A778DB355064CA4543" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_06222D3AECBEC3D3FE40355064CAD9F3" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_06222D3AECBEC3D3FE40355064CAD9F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_06222D3AECBEC3D3FE40355064CAD9F3" xlink:to="loc_us-gaap_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_06222D3AECBEC3D3FE40355064CAD9F3" xlink:to="loc_us-gaap_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_57B03DCAA23BE1A9534D355064CB9271" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E" xlink:to="loc_us-gaap_CashFlowHedgingMember_57B03DCAA23BE1A9534D355064CB9271" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_30D7D0504814EFD7F8F4355064CBD61B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_Revenues_30D7D0504814EFD7F8F4355064CBD61B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeTermOfContract" xlink:label="loc_us-gaap_DerivativeTermOfContract_8BD4EB7E94760F59BA8D355064CC2ED2" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeTermOfContract_8BD4EB7E94760F59BA8D355064CC2ED2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet" xlink:label="loc_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/DivestitureDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/DivestitureNotes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/DocumentAndEntityInformation" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/EmployeeBenefitsDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/EmployeeBenefitsNotes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/FairValueMeasurements" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:to="loc_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NotesReceivableFairValueDisclosure" xlink:label="loc_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:to="loc_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_5CC717924845FE24A68C1ECFD7334AE4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_5CC717924845FE24A68C1ECFD7334AE4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_5CC717924845FE24A68C1ECFD7334AE4" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_5CC717924845FE24A68C1ECFD7334AE4" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_8CED7211FC9D4D7BEABE1ECFD7332B71" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45" xlink:to="loc_us-gaap_CostOfSalesMember_8CED7211FC9D4D7BEABE1ECFD7332B71" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenseMember" xlink:label="loc_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45" xlink:to="loc_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Finitelivedintangibleassetsfutureamortizationtotal" xlink:label="loc_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentedTechnologyMember" xlink:label="loc_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardLineItems" xlink:label="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardTable" xlink:label="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_EC261F38CB8A795EE5AB3AF2306FCF95" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_EC261F38CB8A795EE5AB3AF2306FCF95" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_F02985CF1510B45E4DF43AF2306F74ED_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_EC261F38CB8A795EE5AB3AF2306FCF95" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_F02985CF1510B45E4DF43AF2306F74ED_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_F02985CF1510B45E4DF43AF2306F74ED" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_EC261F38CB8A795EE5AB3AF2306FCF95" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_F02985CF1510B45E4DF43AF2306F74ED" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EvolutionRoboticsIncErMember" xlink:label="loc_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_F02985CF1510B45E4DF43AF2306F74ED" xlink:to="loc_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:to="loc_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAxis" xlink:label="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:to="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:to="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchMember" xlink:label="loc_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:to="loc_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_C8ED60C34F877FE9580E3AF23072B978" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_C8ED60C34F877FE9580E3AF23072B978" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_B91A60ED9C755BE2BD0C3AF2307274CC" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_B91A60ED9C755BE2BD0C3AF2307274CC" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_506D3360139B9C3BBC1B3AF23072F619" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_506D3360139B9C3BBC1B3AF23072F619" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_7B5865DEE37641B071803AF230736AC6" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_7B5865DEE37641B071803AF230736AC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_A5E28C3E82521B6EFBD735F53F268433" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_srt_StatementGeographicalAxis_A5E28C3E82521B6EFBD735F53F268433" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_A5E28C3E82521B6EFBD735F53F268433" xlink:to="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_A5E28C3E82521B6EFBD735F53F268433" xlink:to="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonUsMember" xlink:label="loc_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:to="loc_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticDestinationMember" xlink:label="loc_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:to="loc_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicDistributionForeignMember" xlink:label="loc_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:to="loc_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_BDC9A29F5DE46B433C3635F53F276D6F" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_BDC9A29F5DE46B433C3635F53F276D6F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_BDC9A29F5DE46B433C3635F53F276D6F" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_BDC9A29F5DE46B433C3635F53F276D6F" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_834CDA7A8E020552152F35F53F288190" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_834CDA7A8E020552152F35F53F288190" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7DC58874456939D41F2035F53F2816C4" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7DC58874456939D41F2035F53F2816C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7DC58874456939D41F2035F53F2816C4" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7DC58874456939D41F2035F53F2816C4" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_890CF7B4839FC82F947E35F53F28B115" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" xlink:to="loc_us-gaap_SalesRevenueNetMember_890CF7B4839FC82F947E35F53F28B115" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ConsumerRobotRevenueMember" xlink:label="loc_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" xlink:to="loc_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_F7A9065369584C19FBAA35F53F290982" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_srt_MajorCustomersAxis_F7A9065369584C19FBAA35F53F290982" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_F7A9065369584C19FBAA35F53F290982" xlink:to="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_F7A9065369584C19FBAA35F53F290982" xlink:to="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmazonMember" xlink:label="loc_irbt_AmazonMember_B650D85AECAC5F3BB84135F53F29228A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_AmazonMember_B650D85AECAC5F3BB84135F53F29228A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_FifteenCustomersMember" xlink:label="loc_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationSODCMember" xlink:label="loc_irbt_SalesOnDemandCorporationSODCMember_7CC4F6BA8DA1512B352635F53F29FF7D" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_SalesOnDemandCorporationSODCMember_7CC4F6BA8DA1512B352635F53F29FF7D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisSASMember" xlink:label="loc_irbt_RobopolisSASMember_884219D303EC1AC5BC5A35F53F2AE18E" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_RobopolisSASMember_884219D303EC1AC5BC5A35F53F2AE18E" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_A323D2CCC0F3265986A935F53F2AA7F0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_dei_DocumentPeriodEndDate_A323D2CCC0F3265986A935F53F2AA7F0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="loc_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_44B4957BA32C089E63CB35F53F2A0347" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_44B4957BA32C089E63CB35F53F2A0347" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_B66F3A281DAC1603D94935F53F2A1E89" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_us-gaap_Revenues_B66F3A281DAC1603D94935F53F2A1E89" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyLineItems" xlink:label="loc_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:type="locator" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyTable" xlink:label="loc_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:to="loc_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:to="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:to="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:to="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyTableTextBlock" xlink:label="loc_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:to="loc_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/Inventory" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/InventoryDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/InventoryTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/LeasesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/LeasesNotes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/LeasesPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/LeasesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/NatureOfBusiness" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/NetIncomePerShareDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/PropertyAndEquipment" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/PropertyAndEquipment1Details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_07200B368DD1049F970E34AF9111A87D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_07200B368DD1049F970E34AF9111A87D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_07200B368DD1049F970E34AF9111A87D" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_07200B368DD1049F970E34AF9111A87D" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaap_ComputerEquipmentMember_2475431FBD0EC14FA9B334AF9111817C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_ComputerEquipmentMember_2475431FBD0EC14FA9B334AF9111817C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_79B59259D571AA75A4FF34AF9112A473" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_79B59259D571AA75A4FF34AF9112A473" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_74AF2CF07CEC90745E5234AF9112FC8B" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_74AF2CF07CEC90745E5234AF9112FC8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ToolsDiesAndMoldsMember" xlink:label="loc_us-gaap_ToolsDiesAndMoldsMember_4028C8B8B17DB2A6CE9A34AF91123271" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_ToolsDiesAndMoldsMember_4028C8B8B17DB2A6CE9A34AF91123271" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_71BC4BD5A359731670F334AF911234E5" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_71BC4BD5A359731670F334AF911234E5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_A5744923ADEE5ABA4BA934AF9112B2EE" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_A5744923ADEE5ABA4BA934AF9112B2EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_A937E35CBEEB19D6EAB934AF9112DCC5" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:to="loc_srt_RangeAxis_A937E35CBEEB19D6EAB934AF9112DCC5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_98ABB1A897A90732636734AF91137D3B_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_A937E35CBEEB19D6EAB934AF9112DCC5" xlink:to="loc_srt_RangeMember_98ABB1A897A90732636734AF91137D3B_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_98ABB1A897A90732636734AF91137D3B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_A937E35CBEEB19D6EAB934AF9112DCC5" xlink:to="loc_srt_RangeMember_98ABB1A897A90732636734AF91137D3B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareNet" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/PropertyAndEquipmentDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_309F660916E24715C7193A39786DCD18" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:to="loc_srt_RangeAxis_309F660916E24715C7193A39786DCD18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_309F660916E24715C7193A39786DCD18" xlink:to="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_309F660916E24715C7193A39786DCD18" xlink:to="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_687B2C03A16C33364EE63A39786E683F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" xlink:to="loc_srt_MinimumMember_687B2C03A16C33364EE63A39786E683F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_9E041C13C53E2CB88EDB3A39786FA4CB" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" xlink:to="loc_srt_MaximumMember_9E041C13C53E2CB88EDB3A39786FA4CB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ToolsDiesAndMoldsMember" xlink:label="loc_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_LeaseholdImprovementsTerms" xlink:label="loc_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:to="loc_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/PropertyAndEquipmentTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnaudited" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnauditedDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnauditedTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionContractBalancesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_843A624A33C8F4CA02DE3AB724E1A7C4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" xlink:to="loc_srt_StatementGeographicalAxis_843A624A33C8F4CA02DE3AB724E1A7C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_843A624A33C8F4CA02DE3AB724E1A7C4" xlink:to="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_843A624A33C8F4CA02DE3AB724E1A7C4" xlink:to="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="loc_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:to="loc_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EMEAMember" xlink:label="loc_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:to="loc_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllOtherRegionsMember" xlink:label="loc_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:to="loc_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:to="loc_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionInitialApplicationDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:to="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis" xlink:label="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:to="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain" xlink:label="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:to="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain" xlink:label="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:to="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:to="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:to="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:to="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionNotes" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/RevenueRecognitionTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/ShortTermInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:to="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BondsMember" xlink:label="loc_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:to="loc_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtMember" xlink:label="loc_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:to="loc_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesAbstract" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesAmortizedCost" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensation" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationEsppDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_5DF5F2B046DBBA7D66823A8F129B4EA8" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:to="loc_us-gaap_AwardTypeAxis_5DF5F2B046DBBA7D66823A8F129B4EA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_C2ED7783A8549E58BAF23A8F129B7C3A_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_5DF5F2B046DBBA7D66823A8F129B4EA8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_C2ED7783A8549E58BAF23A8F129B7C3A_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_C2ED7783A8549E58BAF23A8F129B7C3A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_5DF5F2B046DBBA7D66823A8F129B4EA8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_C2ED7783A8549E58BAF23A8F129B7C3A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockMember" xlink:label="loc_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_C2ED7783A8549E58BAF23A8F129B7C3A" xlink:to="loc_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_148F0E7A6116106828FF3A8F129CE315" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:to="loc_srt_RangeAxis_148F0E7A6116106828FF3A8F129CE315" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_148F0E7A6116106828FF3A8F129CE315" xlink:to="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_148F0E7A6116106828FF3A8F129CE315" xlink:to="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_893FFCB25C7F0A7FD07E3A8F129C027B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" xlink:to="loc_srt_MinimumMember_893FFCB25C7F0A7FD07E3A8F129C027B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_0E265778DFC1AA90B0433A8F129C39FF" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" xlink:to="loc_srt_MaximumMember_0E265778DFC1AA90B0433A8F129C39FF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount" xlink:label="loc_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_CD1BB188B06D14A2F6063B1D3BF77DC6" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_CD1BB188B06D14A2F6063B1D3BF77DC6" xlink:to="loc_us-gaap_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RestatementAxis" xlink:label="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:to="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RestatementDomain" xlink:label="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:to="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RestatementDomain" xlink:label="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:to="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:to="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:to="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:to="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_ED8AE882941F935DA95435F53F9B4299" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:to="loc_us-gaap_AwardTypeAxis_ED8AE882941F935DA95435F53F9B4299" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_ED8AE882941F935DA95435F53F9B4299" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_ED8AE882941F935DA95435F53F9B4299" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="loc_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F" xlink:to="loc_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_BDE9843001EBC07EB38635F53F9C0346" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:to="loc_srt_RangeAxis_BDE9843001EBC07EB38635F53F9C0346" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_BDE9843001EBC07EB38635F53F9C0346" xlink:to="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_BDE9843001EBC07EB38635F53F9C0346" xlink:to="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_804D95641DA90D81AAE235F53F9C353F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" xlink:to="loc_srt_MinimumMember_804D95641DA90D81AAE235F53F9C353F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_3D25EF6B32EE6063973235F53F9CD146" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" xlink:to="loc_srt_MaximumMember_3D25EF6B32EE6063973235F53F9CD146" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:to="loc_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:to="loc_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_3594AA43A1511EEAB3CD3AF307F21212" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:to="loc_us-gaap_AwardTypeAxis_3594AA43A1511EEAB3CD3AF307F21212" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_3594AA43A1511EEAB3CD3AF307F21212" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_3594AA43A1511EEAB3CD3AF307F21212" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_4FF40843B0348459ED0D3AF307F225FD" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2" xlink:to="loc_us-gaap_EmployeeStockOptionMember_4FF40843B0348459ED0D3AF307F225FD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_F4244C520017E0BA49503AF307F3AA70" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_F4244C520017E0BA49503AF307F3AA70" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_EA0734C8A03B57FDE0783AF307F32AB4" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:to="loc_srt_RangeAxis_EA0734C8A03B57FDE0783AF307F32AB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_EA0734C8A03B57FDE0783AF307F32AB4" xlink:to="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_EA0734C8A03B57FDE0783AF307F32AB4" xlink:to="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_42F5D91EF266983947053AF307F31681" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" xlink:to="loc_srt_MinimumMember_42F5D91EF266983947053AF307F31681" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_797579F9234F7E6A66223AF307F41D41" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" xlink:to="loc_srt_MaximumMember_797579F9234F7E6A66223AF307F41D41" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_E740E4BA6CBA156ED7D73AF307F4F5A6" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_E740E4BA6CBA156ED7D73AF307F4F5A6" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_33229FCAF1FC7CC9004C3AF307F40C4F" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_dei_DocumentPeriodEndDate_33229FCAF1FC7CC9004C3AF307F40C4F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_8B9FCF4321C2B0376F9B3AF307F4012A" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_8B9FCF4321C2B0376F9B3AF307F4012A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_98FBEB634E2B087255223AF307F48F28" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_98FBEB634E2B087255223AF307F48F28" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_57E4ED5C86D3839880213AF307F58662" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_57E4ED5C86D3839880213AF307F58662" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice_AC0765F3A9E4A9166DC93AF307F99562" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_SharePrice_AC0765F3A9E4A9166DC93AF307F99562" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:to="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:to="loc_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_D682AA0E4C9A2754288A1ECFD4698D30" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:to="loc_srt_RangeAxis_D682AA0E4C9A2754288A1ECFD4698D30" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_D682AA0E4C9A2754288A1ECFD4698D30" xlink:to="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_D682AA0E4C9A2754288A1ECFD4698D30" xlink:to="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84" xlink:to="loc_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_B9C186C1B4CDDFE72D741ECFD469571E" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84" xlink:to="loc_srt_MaximumMember_B9C186C1B4CDDFE72D741ECFD469571E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesOneMember" xlink:label="loc_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesTwoMember" xlink:label="loc_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesThreeMember" xlink:label="loc_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesFourMember" xlink:label="loc_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesFiveMember" xlink:label="loc_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesSixMember" xlink:label="loc_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesSevenMember" xlink:label="loc_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesEightMember" xlink:label="loc_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesNineMember" xlink:label="loc_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesTenMember" xlink:label="loc_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockBasedCompensationTables" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationLineItems" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:type="locator" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationTable" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:to="loc_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_59769C1DBB35604026FD3124E6B165AB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_59769C1DBB35604026FD3124E6B165AB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_03D10E0E87C5A6C269013124E6B3378D_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_59769C1DBB35604026FD3124E6B165AB" xlink:to="loc_us-gaap_EquityComponentDomain_03D10E0E87C5A6C269013124E6B3378D_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_03D10E0E87C5A6C269013124E6B3378D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_59769C1DBB35604026FD3124E6B165AB" xlink:to="loc_us-gaap_EquityComponentDomain_03D10E0E87C5A6C269013124E6B3378D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationTableTextBlock" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:to="loc_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockholdersEquity" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/StockholdersEquityDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccountingPoliciesLineItems" xlink:label="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:type="locator" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccountingPoliciesTable" xlink:label="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforproductreturnsMember" xlink:label="loc_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:to="loc_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceForPriceProtectionMember" xlink:label="loc_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:to="loc_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_4AB2E6E1474F8B4EE44335EADD04672D" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_4AB2E6E1474F8B4EE44335EADD04672D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_4AB2E6E1474F8B4EE44335EADD04672D" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_4AB2E6E1474F8B4EE44335EADD04672D" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8ECABD6B21C0D5A5609035EADD05CE5E" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8ECABD6B21C0D5A5609035EADD05CE5E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:to="loc_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:to="loc_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:to="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:to="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TwoCustomersMember" xlink:label="loc_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmazonMember" xlink:label="loc_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ThreeCustomersMember" xlink:label="loc_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember" xlink:label="loc_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:to="loc_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationSODCMember" xlink:label="loc_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisMember" xlink:label="loc_irbt_RobopolisMember_A36D4025EE78E75D98A735EADD0D30E8" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_RobopolisMember_A36D4025EE78E75D98A735EADD0D30E8" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisSASMember" xlink:label="loc_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_83B9CD66A52D411EEFBD35EADD0EB13B" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_srt_RangeAxis_83B9CD66A52D411EEFBD35EADD0EB13B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_83B9CD66A52D411EEFBD35EADD0EB13B" xlink:to="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_83B9CD66A52D411EEFBD35EADD0EB13B" xlink:to="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_19AC65A6FEA9CC57735935EADD0E5151" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" xlink:to="loc_srt_MinimumMember_19AC65A6FEA9CC57735935EADD0E5151" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_B224F6A07BA673E1668335EADD0EE3A6" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" xlink:to="loc_srt_MaximumMember_B224F6A07BA673E1668335EADD0EE3A6" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_0669F7669FE818BA681235EADD0E994F" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_dei_DocumentPeriodEndDate_0669F7669FE818BA681235EADD0E994F" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_WarrantyTerm" xlink:label="loc_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:type="locator" />
    <link:definitionArc order="2" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_22262F2AF2FF7ACF696035EADD0F047E" xlink:type="locator" />
    <link:definitionArc order="3" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_22262F2AF2FF7ACF696035EADD0F047E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:type="locator" />
    <link:definitionArc order="4" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:type="locator" />
    <link:definitionArc order="5" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyDescription" xlink:label="loc_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:type="locator" />
    <link:definitionArc order="6" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="loc_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:type="locator" />
    <link:definitionArc order="7" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:type="locator" />
    <link:definitionArc order="8" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentForAmortization" xlink:label="loc_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:type="locator" />
    <link:definitionArc order="9" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="loc_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:type="locator" />
    <link:definitionArc order="10" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_D89BAB84614FD4C3F6A335EADD10AA77" xlink:type="locator" />
    <link:definitionArc order="11" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_D89BAB84614FD4C3F6A335EADD10AA77" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:type="locator" />
    <link:definitionArc order="12" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:type="locator" />
    <link:definitionArc order="13" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:type="locator" />
    <link:definitionArc order="14" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:type="locator" />
    <link:definitionArc order="15" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" xlink:type="locator" />
    <link:definitionArc order="16" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SecurityOwnedNotReadilyMarketableLineItems" xlink:label="loc_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SecurityOwnedNotReadilyMarketableTable" xlink:label="loc_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:to="loc_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:type="arc" xbrldt:closed="true" xbrldt:contextElement="segment" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161_default" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:to="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161_default" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:to="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainLossOnSaleOfEquityInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:type="locator" />
    <link:definitionArc order="1" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:to="loc_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:type="arc" />
  </link:definitionLink>
  <link:definitionLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/WorkingCapitalFacilities" xlink:type="extended" />
  <link:definitionLink xlink:role="http://www.irobot.com/role/WorkingCapitalFacilitiesDetails" xlink:type="extended" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>11
<FILENAME>irbt-20191228_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_PropertyPlantAndEquipmentAbstract_8DFA792FF2C2CDC7EBD81ECFD6EDA779_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract_8DFA792FF2C2CDC7EBD81ECFD6EDA779" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8DFA792FF2C2CDC7EBD81ECFD6EDA779" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8DFA792FF2C2CDC7EBD81ECFD6EDA779" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract_8DFA792FF2C2CDC7EBD81ECFD6EDA779" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Property and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_405452EE2E20D620469F35F53F3E321E_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract_405452EE2E20D620469F35F53F3E321E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_405452EE2E20D620469F35F53F3E321E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_405452EE2E20D620469F35F53F3E321E" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract_405452EE2E20D620469F35F53F3E321E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F_verboseLabel_en-US" xlink:label="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Company's adjustments to its uncertain tax position</link:label>
    <link:label id="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F_label_en-US" xlink:label="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:label="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="lab_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC_periodStartLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC" xlink:to="lab_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259_verboseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Increase for tax positions related to the current year</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase for tax positions related to acquisition</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting from Acquisition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3_negatedLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Increase (decrease) for tax positions related to prior years</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase for tax positions related to prior years</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22_negatedLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Decrease for settlements with applicable taxing authorities</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Decrease Resulting from Settlements with Taxing Authorities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272_negatedLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Decrease for lapses of statute of limitations</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefits_990A0AA03B695003FA6835F53F3F5891_periodEndLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefits_990A0AA03B695003FA6835F53F3F5891" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_990A0AA03B695003FA6835F53F3F5891" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefits_990A0AA03B695003FA6835F53F3F5891" xlink:to="lab_us-gaap_UnrecognizedTaxBenefits_990A0AA03B695003FA6835F53F3F5891" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_F3F7FF3D2D7D1D32C3851ECFD61988F4_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_F3F7FF3D2D7D1D32C3851ECFD61988F4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_F3F7FF3D2D7D1D32C3851ECFD61988F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_F3F7FF3D2D7D1D32C3851ECFD61988F4" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrentAbstract_F3F7FF3D2D7D1D32C3851ECFD61988F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Components of accrued expenses</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Accrued Liabilities [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB" xlink:to="lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="lab_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Two</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Two</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Three</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Three</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Four</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Four</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Five</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due after Year Five</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due after Year Five</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments, Due</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792" xlink:to="lab_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current portion of operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4_label_en-US" xlink:label="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments, Debt and Equity Securities [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4" xlink:to="lab_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4" xlink:type="arc" />
    <link:label id="lab_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A_terseLabel_en-US" xlink:label="lab_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Security Owned Not Readily Marketable [Table]</link:label>
    <link:label id="lab_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A_label_en-US" xlink:label="lab_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Owned Not Readily Marketable [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SecurityOwnedNotReadilyMarketableTable" xlink:label="loc_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:to="lab_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement, Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:to="lab_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" 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_6714E410BF20A2FB3AF935F540B07161_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" xlink:to="lab_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" xlink:type="arc" />
    <link:label id="lab_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742_terseLabel_en-US" xlink:label="lab_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Security Owned Not Readily Marketable [Line Items]</link:label>
    <link:label id="lab_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742_label_en-US" xlink:label="lab_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Owned Not Readily Marketable [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SecurityOwnedNotReadilyMarketableLineItems" xlink:label="loc_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:to="lab_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:type="arc" />
    <link:label id="lab_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6_terseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Sale of Equity Investments</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Sale of Equity Investments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainLossOnSaleOfEquityInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:to="lab_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A_terseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Securities without Readily Determinable Fair Value, Amount</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A_label_en-US" xlink:label="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Securities without Readily Determinable Fair Value, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A" xlink:to="lab_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_8925754A119606F31DB53C4BEF0CF825_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_8925754A119606F31DB53C4BEF0CF825" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_8925754A119606F31DB53C4BEF0CF825" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_8925754A119606F31DB53C4BEF0CF825" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_8925754A119606F31DB53C4BEF0CF825" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697_terseLabel_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" 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_4C080B7A21C429068D333C4BEF0CE697_label_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:type="arc" />
    <link:label id="lab_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3_terseLabel_en-US" xlink:label="lab_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3_label_en-US" xlink:label="lab_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:to="lab_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:type="arc" />
    <link:label id="lab_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F_terseLabel_en-US" xlink:label="lab_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F_label_en-US" xlink:label="lab_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:to="lab_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:type="arc" />
    <link:label id="lab_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E_terseLabel_en-US" xlink:label="lab_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E_label_en-US" xlink:label="lab_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:to="lab_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hedging Relationship [Axis]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Relationship [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:type="arc" />
    <link:label id="lab_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hedging Relationship [Domain]</link:label>
    <link:label id="lab_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A_label_en-US" xlink:label="lab_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Relationship [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:to="lab_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7_terseLabel_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flow hedge</link:label>
    <link:label id="lab_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7_label_en-US" xlink:label="lab_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" xlink:to="lab_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:to="lab_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3_label_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:to="lab_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:type="arc" />
    <link:label id="lab_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency forward contracts</link:label>
    <link:label id="lab_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1_label_en-US" xlink:label="lab_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Exchange Option [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeOptionMember" xlink:label="loc_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:to="lab_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency forward contracts</link:label>
    <link:label id="lab_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C_label_en-US" xlink:label="lab_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Exchange Forward [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeForwardMember" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:to="lab_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:type="arc" />
    <link:label id="lab_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" 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_93F164305B108EED68613C4BEF10E16A_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:to="lab_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:type="arc" />
    <link:label id="lab_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" 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_7C75F5DADCB9E67232CB3C4BEF100C27_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:to="lab_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:type="arc" />
    <link:label id="lab_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187_terseLabel_en-US" xlink:label="lab_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivatives not designated as hedging instruments:</link:label>
    <link:label id="lab_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187_label_en-US" xlink:label="lab_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" xlink:to="lab_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" xlink:type="arc" />
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462_terseLabel_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivatives designated as cash flow hedges:</link:label>
    <link:label id="lab_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462_label_en-US" xlink:label="lab_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" xlink:to="lab_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" xlink:type="arc" />
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" 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_E42A8660B36F8E6C4B883C4BEF1112FB_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:to="lab_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" 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_F7EA8B819901E7BA85603C4BEF11BDBF_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="lab_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1_terseLabel_en-US" xlink:label="lab_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1_label_en-US" xlink:label="lab_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Current Assets [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherCurrentAssetsMember" xlink:label="loc_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:to="lab_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" 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_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F_label_en-US" xlink:label="lab_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Noncurrent Assets [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncurrentAssetsMember" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" xlink:to="lab_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" 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_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Liabilities [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="loc_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" xlink:to="lab_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Noncurrent Liabilities [Member]</link:label>
    <link:label id="lab_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950_label_en-US" xlink:label="lab_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Noncurrent Liabilities [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="loc_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:to="lab_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" 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_211CD44BC1D4D1C9EE853C4BEF132595_label_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesFairValueLineItems" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="lab_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative, Term of Contract</link:label>
    <link:label id="lab_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432_label_en-US" xlink:label="lab_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative, Term of Contract</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeTermOfContract" xlink:label="loc_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:to="lab_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative, Notional Amount</link:label>
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163_label_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative, Notional Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeNotionalAmount" xlink:label="loc_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:to="lab_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative, Fair Value, Net [Abstract]</link:label>
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB_label_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative, Fair Value, Net [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeNetAbstract" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:to="lab_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE_verboseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Derivative Asset</link:label>
    <link:label id="lab_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE_label_en-US" xlink:label="lab_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" xlink:to="lab_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357_verboseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Derivative Liability</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" xlink:to="lab_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C_verboseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="lab_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689_verboseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:to="lab_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39_verboseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A_verboseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Short term investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, net</link:label>
    <link:label id="lab_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC_label_en-US" xlink:label="lab_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts and Other Receivables, Net, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsAndOtherReceivablesNetCurrent" xlink:label="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC" xlink:to="lab_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1_label_en-US" xlink:label="lab_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1" xlink:to="lab_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550_label_en-US" xlink:label="lab_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550" xlink:to="lab_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D" 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_62DFEA21EF1627EA04623C7CD8C3560D_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D" xlink:to="lab_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Assets, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015" xlink:type="arc" />
    <link:label id="lab_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC" 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_601DE7F1314474763C713C7CD8C421EC_label_en-US" xlink:label="lab_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC" xlink:to="lab_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A" 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_FADDE585F41F6B34C21B3C7CD8C43D9A_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA" xlink:to="lab_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA" xlink:type="arc" />
    <link:label id="lab_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681_totalLabel_en-US" xlink:label="lab_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681" 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_BC5AC2B80695D6F9B0B43C7CD8C46681_label_en-US" xlink:label="lab_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681" xlink:to="lab_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF_verboseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9_verboseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91" xlink:to="lab_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240_verboseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue and customer advances</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89" xlink:to="lab_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50" 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_E139C1B165EE03274E813C7CD8C6DA50_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50" xlink:to="lab_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_FFC1FA9CA6DA8FC562D63C7CD8C6F027_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_FFC1FA9CA6DA8FC562D63C7CD8C6F027" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_FFC1FA9CA6DA8FC562D63C7CD8C6F027" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_FFC1FA9CA6DA8FC562D63C7CD8C6F027" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_FFC1FA9CA6DA8FC562D63C7CD8C6F027" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total long-term liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D_label_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Noncurrent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D" xlink:to="lab_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D" xlink:type="arc" />
    <link:label id="lab_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F_totalLabel_en-US" xlink:label="lab_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F" 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_97E321705726ECFCD0943C7CD8C68D6F_label_en-US" xlink:label="lab_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F" xlink:to="lab_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250_verboseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Commitments and contingencies (Note 15)</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250" xlink:to="lab_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, 5,000 shares authorized and none outstanding</link:label>
    <link:label id="lab_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E_label_en-US" xlink:label="lab_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E" xlink:to="lab_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock, $0.01 par value; 100,000 shares authorized; 28,352 and 27,788 shares issued and outstanding, respectively</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3_label_en-US" xlink:label="lab_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3" xlink:to="lab_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE_verboseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE" xlink:type="arc" />
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5_verboseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32_verboseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accumulated other comprehensive income (loss)</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846" xlink:to="lab_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued Expenses</link:label>
    <link:label id="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C_label_en-US" xlink:label="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C" xlink:to="lab_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_9A2DB4F40D54B93A81A41ECFD689203D_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract_9A2DB4F40D54B93A81A41ECFD689203D" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_9A2DB4F40D54B93A81A41ECFD689203D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_9A2DB4F40D54B93A81A41ECFD689203D" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract_9A2DB4F40D54B93A81A41ECFD689203D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of financial assets and liabilities measured at fair value on a recurring basis</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A" xlink:to="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E04BB625138FC21FC59F1ECFD672A74D_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E04BB625138FC21FC59F1ECFD672A74D" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E04BB625138FC21FC59F1ECFD672A74D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E04BB625138FC21FC59F1ECFD672A74D" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E04BB625138FC21FC59F1ECFD672A74D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets by Major Class [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" 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_18EB943B0F10376DB9FF1ECFD6720C7B_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" 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_4DE60EA76D5C82ACA19C1ECFD673FD54_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:type="arc" />
    <link:label id="lab_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01_verboseLabel_en-US" xlink:label="lab_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Completed technology</link:label>
    <link:label id="lab_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01_label_en-US" xlink:label="lab_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Patented Technology [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentedTechnologyMember" xlink:label="loc_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:to="lab_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:type="arc" />
    <link:label id="lab_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0_verboseLabel_en-US" xlink:label="lab_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Tradename</link:label>
    <link:label id="lab_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0_label_en-US" xlink:label="lab_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trade Names [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:to="lab_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer relationships</link:label>
    <link:label id="lab_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B_label_en-US" xlink:label="lab_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Relationships [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:to="lab_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:type="arc" />
    <link:label id="lab_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31_terseLabel_en-US" xlink:label="lab_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reacquired distribution rights</link:label>
    <link:label id="lab_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31_label_en-US" xlink:label="lab_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" xlink:to="lab_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" xlink:type="arc" />
    <link:label id="lab_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244_terseLabel_en-US" xlink:label="lab_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-competition agreements</link:label>
    <link:label id="lab_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244_label_en-US" xlink:label="lab_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Noncompete Agreements [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:to="lab_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" 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_8B126F503BB541EE99DE1ECFD674003C_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net [Abstract]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cost</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3_totalLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Goodwill and other intangible assets</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_44775D57D548D9F5F3461ECFD72D2DF0_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract_44775D57D548D9F5F3461ECFD72D2DF0" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_44775D57D548D9F5F3461ECFD72D2DF0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_44775D57D548D9F5F3461ECFD72D2DF0" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract_44775D57D548D9F5F3461ECFD72D2DF0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Asset and Liability [Table Text Block]</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Asset and Liability [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619" xlink:to="lab_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619" xlink:type="arc" />
    <link:label id="lab_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177_label_en-US" xlink:label="lab_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177_documentation_en-US" xlink:label="lab_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">-- None. No documentation exists for this element. --</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_DocumentAndEntityInformationAbstract" xlink:label="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="lab_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:type="arc" />
    <link:label id="lab_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF_label_en-US" xlink:label="lab_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF" xlink:to="lab_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF" xlink:type="arc" />
    <link:label id="lab_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99_label_en-US" xlink:label="lab_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99" xlink:to="lab_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99" xlink:type="arc" />
    <link:label id="lab_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0_label_en-US" xlink:label="lab_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0" xlink:to="lab_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125" xlink:to="lab_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125" xlink:type="arc" />
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF" xlink:to="lab_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF" xlink:type="arc" />
    <link:label id="lab_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840_label_en-US" xlink:label="lab_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840" xlink:to="lab_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840" xlink:type="arc" />
    <link:label id="lab_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C_terseLabel_en-US" xlink:label="lab_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Annual Report</link:label>
    <link:label id="lab_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C_label_en-US" xlink:label="lab_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Annual Report</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentAnnualReport" xlink:label="loc_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C" xlink:to="lab_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36" xlink:to="lab_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36" xlink:type="arc" />
    <link:label id="lab_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B" 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_82D30D941606F1E1672735E63F3C2C1B_label_en-US" xlink:label="lab_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B" xlink:to="lab_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B" xlink:type="arc" />
    <link:label id="lab_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C" 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_FB5ADCD0B95EFEE6C75835E63F3C3F1C_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C" xlink:to="lab_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C" xlink:type="arc" />
    <link:label id="lab_dei_DocumentType_07912E934753BC30988335E63F3CF907_terseLabel_en-US" xlink:label="lab_dei_DocumentType_07912E934753BC30988335E63F3CF907" 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_07912E934753BC30988335E63F3CF907_label_en-US" xlink:label="lab_dei_DocumentType_07912E934753BC30988335E63F3CF907" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_07912E934753BC30988335E63F3CF907" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType_07912E934753BC30988335E63F3CF907" xlink:to="lab_dei_DocumentType_07912E934753BC30988335E63F3CF907" xlink:type="arc" />
    <link:label id="lab_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95_label_en-US" xlink:label="lab_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95" xlink:to="lab_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95" xlink:type="arc" />
    <link:label id="lab_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320" 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_CAABCF500BA8E6040D5F35E63F3D7320_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320" xlink:to="lab_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320" xlink:type="arc" />
    <link:label id="lab_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377" 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_618CE28A5B36DC24542E35E63F3D4377_label_en-US" xlink:label="lab_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377" xlink:to="lab_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377" xlink:type="arc" />
    <link:label id="lab_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D" 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_99FD0B431B580341F15435E63F3E2C9D_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D" xlink:to="lab_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D" xlink:type="arc" />
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A" 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_A482AC9B9635619ED69F35E63F3E4A6A_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A" xlink:to="lab_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A" xlink:type="arc" />
    <link:label id="lab_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80" 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_B9DDEEEC3442703A31D435E63F3E3D80_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80" xlink:to="lab_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80" xlink:type="arc" />
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253_terseLabel_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:label id="lab_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253_label_en-US" xlink:label="lab_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253" xlink:to="lab_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253" xlink:type="arc" />
    <link:label id="lab_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801_terseLabel_en-US" xlink:label="lab_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:label id="lab_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801_label_en-US" xlink:label="lab_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Voluntary Filers</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801" xlink:to="lab_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801" xlink:type="arc" />
    <link:label id="lab_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66" 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_947D727B052B13DFF75135E63F3EAB66_label_en-US" xlink:label="lab_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66" xlink:to="lab_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66" xlink:type="arc" />
    <link:label id="lab_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB_label_en-US" xlink:label="lab_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB" xlink:to="lab_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB" xlink:type="arc" />
    <link:label id="lab_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5" xlink:to="lab_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5" xlink:type="arc" />
    <link:label id="lab_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884_label_en-US" xlink:label="lab_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884" xlink:to="lab_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884" xlink:type="arc" />
    <link:label id="lab_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E_terseLabel_en-US" xlink:label="lab_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Public Float</link:label>
    <link:label id="lab_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E_label_en-US" xlink:label="lab_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Public Float</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityPublicFloat" xlink:label="loc_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E" xlink:to="lab_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E" xlink:type="arc" />
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C" 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_FAC05D26C6A3B4F0F81C35E63F3F089C_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C" 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="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C" xlink:to="lab_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C" xlink:type="arc" />
    <link:label id="lab_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E" xlink:to="lab_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6" xlink:to="lab_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105" xlink:to="lab_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105" xlink:type="arc" />
    <link:label id="lab_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228" xlink:to="lab_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228" xlink:type="arc" />
    <link:label id="lab_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68_label_en-US" xlink:label="lab_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68" xlink:to="lab_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68" xlink:type="arc" />
    <link:label id="lab_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6_label_en-US" xlink:label="lab_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6" xlink:to="lab_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6" xlink:type="arc" />
    <link:label id="lab_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E" xlink:to="lab_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E" xlink:type="arc" />
    <link:label id="lab_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2" xlink:to="lab_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59_verboseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59" xlink:to="lab_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss):</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net foreign currency translation adjustments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029" 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, Portion Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net unrealized gains (losses) on cash flow hedges, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Net gains on cash flow hedge reclassified into earnings, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net unrealized gains (losses) on marketable securities, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D" xlink:to="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE" 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_E0E967041BF0BB7CFEC220A688E18BEE_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE" xlink:type="arc" />
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_E61815408E1EA7B6EACB1ECFD4771961_label_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_E61815408E1EA7B6EACB1ECFD4771961" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_E61815408E1EA7B6EACB1ECFD4771961" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_E61815408E1EA7B6EACB1ECFD4771961" xlink:to="lab_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_E61815408E1EA7B6EACB1ECFD4771961" xlink:type="arc" />
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E_verboseLabel_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Quarterly Information (Unaudited)</link:label>
    <link:label id="lab_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E_label_en-US" xlink:label="lab_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="loc_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E" xlink:to="lab_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationsAbstract_E7A32A1894C8B08658873B192AE3ED21_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsAbstract_E7A32A1894C8B08658873B192AE3ED21" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combinations [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_E7A32A1894C8B08658873B192AE3ED21" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsAbstract_E7A32A1894C8B08658873B192AE3ED21" xlink:to="lab_us-gaap_BusinessCombinationsAbstract_E7A32A1894C8B08658873B192AE3ED21" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" 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_2D461F4EADA5B8F516F83B192AE34E38_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:to="lab_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" 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_62E477CAEEE44604A9F43B192AE42AC6_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:type="arc" />
    <link:label id="lab_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8_terseLabel_en-US" xlink:label="lab_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales On Demand Corporation</link:label>
    <link:label id="lab_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8_label_en-US" xlink:label="lab_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sales On Demand Corporation [Member]</link:label>
    <link:label id="lab_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8_documentation_en-US" xlink:label="lab_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Sales On Demand Corporation [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationMember" xlink:label="loc_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:to="lab_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:type="arc" />
    <link:label id="lab_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94_terseLabel_en-US" xlink:label="lab_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Robopolis</link:label>
    <link:label id="lab_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94_label_en-US" xlink:label="lab_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Robopolis [Member]</link:label>
    <link:label id="lab_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94_documentation_en-US" xlink:label="lab_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Robopolis [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisMember" xlink:label="loc_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:to="lab_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A_verboseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Gross</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [Abstract]</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, net (1)</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax assets, net</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" xlink:type="arc" />
    <link:label id="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0_totalLabel_en-US" xlink:label="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0_label_en-US" xlink:label="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Including Goodwill</link:label>
    <link:label id="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0_documentation_en-US" xlink:label="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Including Goodwill</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:to="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses and other current liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities assumed</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net assets acquired</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gain on business acquisition</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Bargain Purchase, Gain Recognized, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount" xlink:label="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:to="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:type="arc" />
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482_terseLabel_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets, useful life</link:label>
    <link:label id="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482_label_en-US" xlink:label="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Acquired Finite-lived Intangible Assets, Weighted Average Useful Life</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:to="lab_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:type="arc" />
    <link:label id="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465_terseLabel_en-US" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets acquired, fair value</link:label>
    <link:label id="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465_label_en-US" xlink:label="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-lived Intangible Assets Acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:to="lab_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408_label_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:to="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Cost</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C" xlink:to="lab_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E" xlink:to="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3" xlink:to="lab_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3" xlink:type="arc" />
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390" xlink:to="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" 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_0A43E5A35A8DE29AF3C33C53B10A0735_label_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:to="lab_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:to="lab_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Recurring</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:to="lab_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Level 1</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" xlink:to="lab_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Level 2</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" xlink:to="lab_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Level 3 (2)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" xlink:to="lab_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Axis]</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:to="lab_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:type="arc" />
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Domain]</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:type="arc" />
    <link:label id="lab_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2_terseLabel_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Money market funds</link:label>
    <link:label id="lab_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2_label_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Money Market Funds [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:to="lab_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" 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_328980634A53345A3AC03C53B10DE9F9_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" 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_8963B6341554345530CB3C53B10D0DE6_label_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="lab_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Money market funds</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Fair Value Disclosure</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:to="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate and government bonds, $17,016 at cost (3)</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" xlink:to="lab_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" xlink:type="arc" />
    <link:label id="lab_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF_terseLabel_en-US" xlink:label="lab_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Convertible note</link:label>
    <link:label id="lab_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF_label_en-US" xlink:label="lab_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes Receivable, Fair Value Disclosure</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NotesReceivableFairValueDisclosure" xlink:label="loc_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:to="lab_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers out of Level 3</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers out of Level 3</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative instruments (Note 11)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" xlink:to="lab_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" xlink:type="arc" />
    <link:label id="lab_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets measured at fair value</link:label>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477_label_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Fair Value Disclosure</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:to="lab_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" 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_A05B7BC4F44A67F7C8E23C53B10F3781_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:to="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative instruments (Note 11)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" xlink:to="lab_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" xlink:type="arc" />
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities measured at fair value</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial and Nonfinancial Liabilities, Fair Value Disclosure</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:to="lab_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3570AC13532102DA418C1ECFD467D8A5_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3570AC13532102DA418C1ECFD467D8A5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3570AC13532102DA418C1ECFD467D8A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3570AC13532102DA418C1ECFD467D8A5" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3570AC13532102DA418C1ECFD467D8A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" 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_066E9A34D00C267344DF1ECFD4676EAF_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:type="arc" />
    <link:label id="lab_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" 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_4B34CDACC1783E917B211ECFD468E677_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:to="lab_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" 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_E38C85136F63791D6FBB1ECFD468152B_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" xlink:to="lab_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" xlink:type="arc" />
    <link:label id="lab_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E_terseLabel_en-US" xlink:label="lab_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E_label_en-US" xlink:label="lab_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:to="lab_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" 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_AAACABEFF238A981F9B31ECFD469E2AE_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Options, exercises in period, intrinsic value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" 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, Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Fair value of each option grant computed on the grant date</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" 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 and Methodology [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Risk-free interest rate, minimum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" 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, Minimum</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Risk-free interest rate, maximum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" 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, Maximum</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected dividend rate</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Expected life</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Expected volatility, minimum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" 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, Minimum</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Expected volatility, maximum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" 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, Maximum</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, shares authorized</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, shares outstanding</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288" xlink:to="lab_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares authorized</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82" xlink:to="lab_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares issued</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB" xlink:to="lab_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_4F406361ACEC8B6D17801ECFD5F20EC5_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding_4F406361ACEC8B6D17801ECFD5F20EC5" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_4F406361ACEC8B6D17801ECFD5F20EC5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding_4F406361ACEC8B6D17801ECFD5F20EC5" xlink:to="lab_us-gaap_CommonStockSharesOutstanding_4F406361ACEC8B6D17801ECFD5F20EC5" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:to="lab_us-gaap_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1_verboseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Components of available for sale securities</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesTextBlock" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1" xlink:type="arc" />
    <link:label id="lab_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E_verboseLabel_en-US" xlink:label="lab_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Activity related to accounts receivable allowances</link:label>
    <link:label id="lab_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E_label_en-US" xlink:label="lab_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule Of Accounts Receivable Allowances [Table Text Block]</link:label>
    <link:label id="lab_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E_documentation_en-US" xlink:label="lab_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule Of Accounts Receivable Allowances [Table Text Block]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock" xlink:label="loc_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" xlink:to="lab_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Basic and diluted net income per share</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149" xlink:to="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" 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_557FB148F658D096B75A1B45A05C98DB_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" 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 By Exercise Price Range [Axis]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercise Price Range [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" 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 [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Exercise Price Range [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">$ 22.86 - $22.86</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices One [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices one.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesOneMember" xlink:label="loc_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:to="lab_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">29.60 - 32.38</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Two [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices two.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesTwoMember" xlink:label="loc_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:to="lab_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12_terseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">33.14 - 33.14</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Three [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices three.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesThreeMember" xlink:label="loc_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:to="lab_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">33.29 - 34.30</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Four [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices four.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesFourMember" xlink:label="loc_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:to="lab_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">35.43 - 37.08</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Five [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices five.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesFiveMember" xlink:label="loc_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:to="lab_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">37.62 - 37.62</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Six [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices six.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesSixMember" xlink:label="loc_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:to="lab_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">39.09 - 39.09</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Seven [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices seven.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesSevenMember" xlink:label="loc_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:to="lab_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">43.35 - 43.35</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Eight [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices eight.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesEightMember" xlink:label="loc_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:to="lab_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">57.33 - 57.33</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Nine [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices nine.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesNineMember" xlink:label="loc_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:to="lab_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:type="arc" />
    <link:label id="lab_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B_verboseLabel_en-US" xlink:label="lab_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">58.55 - 58.55</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B_label_en-US" xlink:label="lab_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Range of Exercise Prices Ten [Member]</link:label>
    <link:label id="lab_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B_documentation_en-US" xlink:label="lab_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Range of exercise prices ten.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesTenMember" xlink:label="loc_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:to="lab_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" 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_EB4C7B2CFAB814E544711B45A064B084_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Range of Exercise Price, Minimum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Range of Exercise Price, Maximum</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Upper Range Limit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Number Outstanding</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Options Outstanding Weighted Average Remaining Contractual Life</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Number Exercisable</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:to="lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:to="lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:type="arc" />
    <link:label id="lab_us-gaap_EquityAbstract_9D85C9C525CB0E6E55221ECFD59A10FE_label_en-US" xlink:label="lab_us-gaap_EquityAbstract_9D85C9C525CB0E6E55221ECFD59A10FE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_9D85C9C525CB0E6E55221ECFD59A10FE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract_9D85C9C525CB0E6E55221ECFD59A10FE" xlink:to="lab_us-gaap_EquityAbstract_9D85C9C525CB0E6E55221ECFD59A10FE" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E_verboseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Stockholders' Equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_08CC3A5786E6394028AC1ECFD6A305CA_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract_08CC3A5786E6394028AC1ECFD6A305CA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_08CC3A5786E6394028AC1ECFD6A305CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_08CC3A5786E6394028AC1ECFD6A305CA" xlink:to="lab_us-gaap_InventoryDisclosureAbstract_08CC3A5786E6394028AC1ECFD6A305CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Summary of future minimum rental payments under operating leases</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Future Minimum Rental Payments for Operating Leases [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447" xlink:to="lab_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Activity related to the warranty accrual</link:label>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6_label_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6" xlink:to="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of the expected tax (benefit) expense</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Statutory federal income tax</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68" 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, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68" xlink:to="lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68" xlink:type="arc" />
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E_terseLabel_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Miscellaneous permanent items</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E_label_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Miscellaneous Permanent Items, Amount</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E_documentation_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Miscellaneous Permanent Items, Amount</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" xlink:to="lab_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">State taxes (net of federal benefit)</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63" 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, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63" xlink:to="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C_negatedLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Federal and state credits</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Credit, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Domestic production activities deduction</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities" xlink:label="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4" xlink:to="lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statute of limitation expirations of uncertain tax positions</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Settlement, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxSettlements" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933" xlink:type="arc" />
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035_negatedTerseLabel_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Excess tax benefits relating to stock-based compensation</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035_label_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Excess Tax Benefits Related To Share-based Compensation, Amount</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035_documentation_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Excess Tax Benefits Related To Share-based Compensation, Amount</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:to="lab_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Cuts and Jobs Act, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0" xlink:type="arc" />
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A_terseLabel_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign-derived intangible income deduction</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A_label_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Foreign derived intangible income deduction</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A_documentation_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Foreign-derived intangible income deduction</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" xlink:to="lab_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" xlink:type="arc" />
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F_terseLabel_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EMEA business restructuring</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F_label_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, EMEA business restructuring</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F_documentation_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, EMEA business restructuring</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" xlink:to="lab_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" xlink:type="arc" />
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0_terseLabel_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Executive compensation</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0_label_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Executive Compensation</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0_documentation_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Executive Compensation</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:to="lab_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:type="arc" />
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209_terseLabel_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax impact of foreign earnings</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209_label_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Impact of Foreign Earnings</link:label>
    <link:label id="lab_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209_documentation_en-US" xlink:label="lab_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Impact of Foreign Earnings</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" xlink:to="lab_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Change in valuation allowance</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8" xlink:to="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_0DFE014947DEF9F3152434AF900EB085_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_0DFE014947DEF9F3152434AF900EB085" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_0DFE014947DEF9F3152434AF900EB085" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_0DFE014947DEF9F3152434AF900EB085" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_0DFE014947DEF9F3152434AF900EB085" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64" 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_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total expected tax (benefits) expenses</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951" xlink:to="lab_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951" xlink:type="arc" />
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:type="arc" />
    <link:label id="lab_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF_terseLabel_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Performance Based Restricted Stock Units</link:label>
    <link:label id="lab_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF_label_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Performance Shares [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="loc_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:to="lab_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" 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, Award Vesting Period</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award vesting rights percentage</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" 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 Rights, Percentage</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation cost not yet recognized</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16_verboseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted average remaining recognition period</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Activities relating to restricted stock awards</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" 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, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Number of Shares Underlying Restricted Stock, Beginning Balance</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Number of Shares Underlying Restricted Stock, Granted</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Number of Shares Underlying Restricted Stock, Vested</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Number of Shares Underlying Restricted Stock, Forfeited</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_F127BB0C56A4AC13291535F53F9EA6F7_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_F127BB0C56A4AC13291535F53F9EA6F7" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Number of Shares Underlying Restricted Stock, Ending Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_F127BB0C56A4AC13291535F53F9EA6F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_F127BB0C56A4AC13291535F53F9EA6F7" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_F127BB0C56A4AC13291535F53F9EA6F7" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" 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, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Grant Date Fair Value, Beginning Balance (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Grant Date Fair Value, Granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Grant Date Fair Value, Vested (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Grant Date Fair Value, Forfeited (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_C02C28CA5A4AD53934B635F53F9FF2B4_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_C02C28CA5A4AD53934B635F53F9FF2B4" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Grant Date Fair Value, Ending Balance (in dollars per share)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_C02C28CA5A4AD53934B635F53F9FF2B4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_C02C28CA5A4AD53934B635F53F9FF2B4" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_C02C28CA5A4AD53934B635F53F9FF2B4" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding, aggregate intrinsic value</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" 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, Outstanding</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding, weighted average remaining contractual term</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" 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, Outstanding, Weighted Average Remaining Contractual Terms</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" 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, Terms of Award</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" 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, Terms of Award</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A_verboseLabel_en-US" xlink:label="lab_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Share price (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A_label_en-US" xlink:label="lab_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:to="lab_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58" 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_B4264E4CBF094BC2AE831ECFD486EB58_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Stock</link:label>
    <link:label id="lab_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C_label_en-US" xlink:label="lab_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Stock [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockMember" xlink:label="loc_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:to="lab_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capital shares reserved for future issuance</link:label>
    <link:label id="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED_label_en-US" xlink:label="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Capital Shares Reserved for Future Issuance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:to="lab_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:type="arc" />
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48_terseLabel_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" 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, Offering Period</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48_label_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" 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, Offering Period</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48_documentation_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" 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, Offering Period</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" xlink:to="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum percentage of salary</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" 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, Maximum Employee Subscription Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" xlink:type="arc" />
    <link:label id="lab_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D_terseLabel_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum dollar amount</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D_label_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" 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, Maximum Amount</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D_documentation_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" 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, Maximum Amount</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount" xlink:label="loc_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" xlink:to="lab_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum number of shares per employee</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" 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, Maximum Number of Shares Per Employee</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of shares available for grant</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase price of common stock percent</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" 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, Purchase Price of Common Stock, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill, Acquired During Period</link:label>
    <link:label id="lab_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105_label_en-US" xlink:label="lab_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill, Acquired During Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105" xlink:to="lab_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A_label_en-US" xlink:label="lab_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillRollForward" xlink:label="loc_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:to="lab_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:type="arc" />
    <link:label id="lab_us-gaap_Goodwill_E493B5DC3E74CD64B5783AC6FD0831DE_periodStartLabel_en-US" xlink:label="lab_us-gaap_Goodwill_E493B5DC3E74CD64B5783AC6FD0831DE" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_E493B5DC3E74CD64B5783AC6FD0831DE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill_E493B5DC3E74CD64B5783AC6FD0831DE" xlink:to="lab_us-gaap_Goodwill_E493B5DC3E74CD64B5783AC6FD0831DE" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0_verboseLabel_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Acquisition</link:label>
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0_label_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill, Purchase Accounting Adjustments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0" xlink:to="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of foreign currency translation</link:label>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059_label_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill, Foreign Currency Translation Gain (Loss)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059" xlink:to="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059" xlink:type="arc" />
    <link:label id="lab_us-gaap_Goodwill_C5A6B1C02E3C5BC40F193AC6FD09AF0E_periodEndLabel_en-US" xlink:label="lab_us-gaap_Goodwill_C5A6B1C02E3C5BC40F193AC6FD09AF0E" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_C5A6B1C02E3C5BC40F193AC6FD09AF0E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill_C5A6B1C02E3C5BC40F193AC6FD09AF0E" xlink:to="lab_us-gaap_Goodwill_C5A6B1C02E3C5BC40F193AC6FD09AF0E" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" 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_C8F6970DCFAD5E036B783AEE28222AFF_label_en-US" xlink:label="lab_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:to="lab_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" 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_8D739C2E91DC8A5D158D3AEE2822EF2E_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:to="lab_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" 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_876C8BAF5FC2632992893AEE28235AAB_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:to="lab_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" 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_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50_label_en-US" xlink:label="lab_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Sales [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" xlink:to="lab_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research and Development Expense [Member]</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638_terseLabel_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling and Marketing Expense [Member]</link:label>
    <link:label id="lab_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638_label_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling and Marketing Expense [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:to="lab_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:type="arc" />
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B_terseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">General and Administrative Expense [Member]</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" 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_D3ED9C3F66EE504FC47B3AEE28296357_label_en-US" xlink:label="lab_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:to="lab_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Noncash Expense</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:to="lab_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Components of income tax expense</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43_verboseLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Current</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598_verboseLabel_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598_label_en-US" xlink:label="lab_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Federal Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598" xlink:to="lab_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02_verboseLabel_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02_label_en-US" xlink:label="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current State and Local Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02" xlink:to="lab_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D_verboseLabel_en-US" xlink:label="lab_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Foreign</link:label>
    <link:label id="lab_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D_label_en-US" xlink:label="lab_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Foreign Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D" xlink:to="lab_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D" xlink:type="arc" />
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5_totalLabel_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current income tax provision</link:label>
    <link:label id="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5_label_en-US" xlink:label="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5" xlink:to="lab_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A_label_en-US" xlink:label="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Federal Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A" xlink:to="lab_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">State</link:label>
    <link:label id="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9_label_en-US" xlink:label="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred State and Local Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9" xlink:to="lab_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign</link:label>
    <link:label id="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4_label_en-US" xlink:label="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Foreign Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4" xlink:to="lab_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total deferred income tax provision</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B" xlink:to="lab_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total income tax provision</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payments to acquire business net of cash acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A_terseLabel_en-US" xlink:label="lab_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash acquired from acquisition</link:label>
    <link:label id="lab_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A_label_en-US" xlink:label="lab_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Acquired from Acquisition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAcquiredFromAcquisition" xlink:label="loc_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:to="lab_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:type="arc" />
    <link:label id="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392_negatedTerseLabel_en-US" xlink:label="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392_label_en-US" xlink:label="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accrued Expenses</link:label>
    <link:label id="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392_documentation_en-US" xlink:label="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accrued Expenses</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:to="lab_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities assumed</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057_totalLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net assets acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:to="lab_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill, Purchase Accounting Adjustments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" xlink:to="lab_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentReportingAbstract_C5357B267C15033F26301ECFD3EFBEA8_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract_C5357B267C15033F26301ECFD3EFBEA8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_C5357B267C15033F26301ECFD3EFBEA8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract_C5357B267C15033F26301ECFD3EFBEA8" xlink:to="lab_us-gaap_SegmentReportingAbstract_C5357B267C15033F26301ECFD3EFBEA8" xlink:type="arc" />
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF_verboseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Industry Segment, Geographic Information and Significant Customers</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF" xlink:type="arc" />
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A_terseLabel_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basis of Presentation</link:label>
    <link:label id="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A_label_en-US" xlink:label="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Basis of Accounting, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A" xlink:to="lab_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF_verboseLabel_en-US" xlink:label="lab_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Fiscal Year-End</link:label>
    <link:label id="lab_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF_label_en-US" xlink:label="lab_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fiscal Period, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiscalPeriod" xlink:label="loc_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF" xlink:to="lab_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF" xlink:type="arc" />
    <link:label id="lab_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE_verboseLabel_en-US" xlink:label="lab_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Use of Estimates</link:label>
    <link:label id="lab_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE_label_en-US" xlink:label="lab_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE" xlink:to="lab_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combinations</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combinations Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B" xlink:to="lab_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363_label_en-US" xlink:label="lab_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363" xlink:to="lab_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E_verboseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E" xlink:to="lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E" xlink:type="arc" />
    <link:label id="lab_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC_terseLabel_en-US" xlink:label="lab_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" 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_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC_label_en-US" xlink:label="lab_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short Term Investments [Policy Text Block]</link:label>
    <link:label id="lab_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC_documentation_en-US" xlink:label="lab_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Short Term Investments [Policy Text Block]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ShortTermInvestmentsPolicyTextBlock" xlink:label="loc_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" xlink:to="lab_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF_verboseLabel_en-US" xlink:label="lab_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable allowances</link:label>
    <link:label id="lab_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF_label_en-US" xlink:label="lab_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Receivable [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="loc_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF" xlink:to="lab_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649_label_en-US" xlink:label="lab_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649" xlink:to="lab_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Warranty</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Product Warranty, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyPolicy" xlink:label="loc_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A" xlink:to="lab_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Property and Equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E" xlink:type="arc" />
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill and Other Long-Lived Assets</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4_verboseLabel_en-US" xlink:label="lab_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other Assets</link:label>
    <link:label id="lab_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4_label_en-US" xlink:label="lab_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentPolicyTextBlock" xlink:label="loc_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4" xlink:to="lab_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financial Instruments and Hedging Activities</link:label>
    <link:label id="lab_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912_label_en-US" xlink:label="lab_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivatives, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="loc_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912" xlink:to="lab_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912" xlink:type="arc" />
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A_verboseLabel_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A_label_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Stock-Based Compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076" xlink:to="lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246_verboseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Research and Development</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246" xlink:type="arc" />
    <link:label id="lab_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3_verboseLabel_en-US" xlink:label="lab_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Internal Use Software</link:label>
    <link:label id="lab_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3_label_en-US" xlink:label="lab_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Internal Use Software, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InternalUseSoftwarePolicy" xlink:label="loc_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3" xlink:to="lab_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0_verboseLabel_en-US" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Advertising Expense</link:label>
    <link:label id="lab_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0_label_en-US" xlink:label="lab_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Advertising Cost [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0" xlink:to="lab_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64_label_en-US" xlink:label="lab_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64" xlink:to="lab_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28_verboseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Concentration of Credit Risk and Significant Customers</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28" xlink:to="lab_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net Income Per Share</link:label>
    <link:label id="lab_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9_label_en-US" xlink:label="lab_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Policy [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9" xlink:to="lab_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9" xlink:type="arc" />
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4_verboseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Recent Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_C9199EEDE470B9C073F8352C2F7892CE_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract_C9199EEDE470B9C073F8352C2F7892CE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_C9199EEDE470B9C073F8352C2F7892CE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_C9199EEDE470B9C073F8352C2F7892CE" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract_C9199EEDE470B9C073F8352C2F7892CE" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA_label_en-US" xlink:label="lab_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" xlink:to="lab_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3_verboseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" xlink:type="arc" />
    <link:label id="lab_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91_verboseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:to="lab_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B_verboseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss)</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54_periodStartLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning balance, shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" xlink:to="lab_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" xlink:to="lab_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Issuance of common stock under employee stock plans</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Issuance of common stock under employee stock plans</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Conversion of deferred compensation</link:label>
    <link:label id="lab_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0_label_en-US" xlink:label="lab_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Compensation Arrangement with Individual, Shares Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:label="loc_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:to="lab_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting of restricted stock units</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueOther" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Vesting of restricted stock units</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF_verboseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Vesting of restricted stock units</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816_verboseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Tax benefit of excess stock-based compensation deduction</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to Additional Paid in Capital, Income Tax Benefit from Share-based Compensation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">APIC, Share-based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01_negatedLabel_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</link:label>
    <link:label id="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01_label_en-US" xlink:label="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:to="lab_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:type="arc" />
    <link:label id="lab_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519_negatedLabel_en-US" xlink:label="lab_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</link:label>
    <link:label id="lab_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519_label_en-US" xlink:label="lab_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Withheld to Cover Tax Withholding Requirements Upon Vesting to Restricted Stock Units Amount</link:label>
    <link:label id="lab_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519_documentation_en-US" xlink:label="lab_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Stock withheld to Cover tax withholding requirements Upon Vesting to restricted Stock Units.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" xlink:label="loc_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:to="lab_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" xlink:type="arc" />
    <link:label id="lab_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143_verboseLabel_en-US" xlink:label="lab_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Directors' deferred compensation</link:label>
    <link:label id="lab_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143_label_en-US" xlink:label="lab_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to Additional Paid in Capital Directors Deferred Compensation</link:label>
    <link:label id="lab_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143_documentation_en-US" xlink:label="lab_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Adjustments to additional paid in capital directors deferred compensation.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" xlink:label="loc_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:to="lab_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Directors' deferred compensation</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" 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, Portion Attributable to Parent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" xlink:to="lab_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" xlink:type="arc" />
    <link:label id="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC_verboseLabel_en-US" xlink:label="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cumulative effect of a change in accounting principle related to adoption of ASC 606</link:label>
    <link:label id="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC_label_en-US" xlink:label="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:to="lab_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchased and Retired During Period, Shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:to="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchased and Retired During Period, Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:to="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" xlink:to="lab_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommonStockSharesIssued_0D37E6D4F8CC8C60CDB6352C2F7D1653_periodEndLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued_0D37E6D4F8CC8C60CDB6352C2F7D1653" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending balance, shares</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_0D37E6D4F8CC8C60CDB6352C2F7D1653" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued_0D37E6D4F8CC8C60CDB6352C2F7D1653" xlink:to="lab_us-gaap_CommonStockSharesIssued_0D37E6D4F8CC8C60CDB6352C2F7D1653" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockholdersEquity_68CA3ADA1DE07EA0AE32352C2F7D12B7_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity_68CA3ADA1DE07EA0AE32352C2F7D12B7" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_68CA3ADA1DE07EA0AE32352C2F7D12B7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity_68CA3ADA1DE07EA0AE32352C2F7D12B7" xlink:to="lab_us-gaap_StockholdersEquity_68CA3ADA1DE07EA0AE32352C2F7D12B7" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Domestic</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Domestic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Foreign</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:label="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="lab_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue reserves</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Returns and Allowances</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accruals and other liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B" xlink:type="arc" />
    <link:label id="lab_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381_terseLabel_en-US" xlink:label="lab_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381_label_en-US" xlink:label="lab_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Asset, Tax Deferred Expense, Lease Liabilities</link:label>
    <link:label id="lab_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381_documentation_en-US" xlink:label="lab_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Lease Liabilities</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities" xlink:label="loc_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" xlink:to="lab_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Tax credits and net operating loss carryforwards</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Tax Credit Carryforwards</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property and equipment</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Property, Plant and Equipment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1" xlink:to="lab_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-based Compensation Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E" xlink:to="lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738" 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_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738" xlink:to="lab_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760" xlink:to="lab_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Valuation allowance</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Net of Valuation Allowance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA" xlink:to="lab_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Gross [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Intangible Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Leasing Arrangements</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesLeasingArrangements" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980" 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_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980_label_en-US" xlink:label="lab_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Other</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980" xlink:to="lab_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total deferred tax liabilities</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Liabilities, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E_totalLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net deferred tax assets</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Tax Assets, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E" xlink:to="lab_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9_label_en-US" xlink:label="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:to="lab_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Leasehold improvements</link:label>
    <link:label id="lab_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A_label_en-US" xlink:label="lab_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leaseholds and Leasehold Improvements [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:to="lab_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49_terseLabel_en-US" xlink:label="lab_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Computer and equipment</link:label>
    <link:label id="lab_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49_label_en-US" xlink:label="lab_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Computer Equipment [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:to="lab_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:type="arc" />
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04_terseLabel_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Furniture and fixtures</link:label>
    <link:label id="lab_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04_label_en-US" xlink:label="lab_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:to="lab_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:type="arc" />
    <link:label id="lab_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58_terseLabel_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Machinery and tooling</link:label>
    <link:label id="lab_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58_label_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Machinery and Equipment [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:to="lab_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:type="arc" />
    <link:label id="lab_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0_terseLabel_en-US" xlink:label="lab_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tooling</link:label>
    <link:label id="lab_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0_label_en-US" xlink:label="lab_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tools, Dies and Molds [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ToolsDiesAndMoldsMember" xlink:label="loc_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:to="lab_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:type="arc" />
    <link:label id="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B_terseLabel_en-US" xlink:label="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business applications software</link:label>
    <link:label id="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B_label_en-US" xlink:label="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Software and Software Development Costs [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:to="lab_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:type="arc" />
    <link:label id="lab_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D_terseLabel_en-US" xlink:label="lab_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capital Leases and Leasehold Improvements Terms</link:label>
    <link:label id="lab_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D_label_en-US" xlink:label="lab_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leasehold Improvements Terms</link:label>
    <link:label id="lab_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D_documentation_en-US" xlink:label="lab_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Leasehold improvements terms.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_LeaseholdImprovementsTerms" xlink:label="loc_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:to="lab_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Useful Life</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Useful Life</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:type="arc" />
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC_terseLabel_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of revenue by geography [Table]</link:label>
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC_label_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of revenue by geography [Table]</link:label>
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC_documentation_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule of revenue by geography [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyTable" xlink:label="loc_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:to="lab_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:type="arc" />
    <link:label id="lab_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE_label_en-US" xlink:label="lab_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" 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/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:to="lab_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:type="arc" />
    <link:label id="lab_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B_label_en-US" xlink:label="lab_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" 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/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" xlink:to="lab_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" xlink:type="arc" />
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4_terseLabel_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of revenue by geography [Line Items]</link:label>
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4_label_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of revenue by geography [Line Items]</link:label>
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4_documentation_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">[Line Items] for Schedule of revenue by geography [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyLineItems" xlink:label="loc_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:to="lab_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:type="arc" />
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB_terseLabel_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of revenue by geography [Table Text Block]</link:label>
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB_label_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of revenue by geography [Table Text Block]</link:label>
    <link:label id="lab_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB_documentation_en-US" xlink:label="lab_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">[Table Text Block] for Schedule of revenue by geography [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyTableTextBlock" xlink:label="loc_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:to="lab_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D" xlink:type="arc" />
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, shares issued</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194" xlink:to="lab_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194" xlink:type="arc" />
    <link:label id="lab_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C_terseLabel_en-US" xlink:label="lab_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, votes per share</link:label>
    <link:label id="lab_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C_label_en-US" xlink:label="lab_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Number Of Votes Per Share</link:label>
    <link:label id="lab_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C_documentation_en-US" xlink:label="lab_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Common Stock, Number Of Votes Per Share</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_CommonStockNumberOfVotesPerShare" xlink:label="loc_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" xlink:to="lab_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchase program, authorized amount</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209" xlink:to="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchase program, authorized amount (in shares)</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Number of Shares Authorized to be Repurchased</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81" xlink:to="lab_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81" xlink:type="arc" />
    <link:label id="lab_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B_terseLabel_en-US" xlink:label="lab_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Program commencement date</link:label>
    <link:label id="lab_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B_label_en-US" xlink:label="lab_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program Commencement Date</link:label>
    <link:label id="lab_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B_documentation_en-US" xlink:label="lab_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Commencement date for the purchase of an entity's own shares under a stock repurchase plan.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_StockRepurchaseProgramCommencementDate" xlink:label="loc_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" xlink:to="lab_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Program expiration date</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program Expiration Date</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramExpirationDate" xlink:label="loc_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB" xlink:to="lab_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_2A616A7FD371EA63F1643A39776AD8D1_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_2A616A7FD371EA63F1643A39776AD8D1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases (in shares)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_2A616A7FD371EA63F1643A39776AD8D1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_2A616A7FD371EA63F1643A39776AD8D1" xlink:to="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_2A616A7FD371EA63F1643A39776AD8D1" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_4056F76DAB78C79F83FA3A39776B29A6_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_4056F76DAB78C79F83FA3A39776B29A6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_4056F76DAB78C79F83FA3A39776B29A6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_4056F76DAB78C79F83FA3A39776B29A6" xlink:to="lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_4056F76DAB78C79F83FA3A39776B29A6" xlink:type="arc" />
    <link:label id="lab_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB_label_en-US" xlink:label="lab_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income taxes [Abstract]</link:label>
    <link:label id="lab_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB_documentation_en-US" xlink:label="lab_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Income taxes [Abstract]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_IncometaxesAbstract" xlink:label="loc_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB" xlink:to="lab_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_9BD2E696FA926A7EA0F830919262D72E_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance_9BD2E696FA926A7EA0F830919262D72E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Valuation allowance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_9BD2E696FA926A7EA0F830919262D72E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance_9BD2E696FA926A7EA0F830919262D72E" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance_9BD2E696FA926A7EA0F830919262D72E" xlink:type="arc" />
    <link:label id="lab_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3_label_en-US" xlink:label="lab_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease Cost [Abstract]</link:label>
    <link:label id="lab_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3_documentation_en-US" xlink:label="lab_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Operating Lease Cost [Abstract]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_OperatingLeaseCostAbstract" xlink:label="loc_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:to="lab_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:type="arc" />
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C" xlink:to="lab_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C" xlink:type="arc" />
    <link:label id="lab_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A_terseLabel_en-US" xlink:label="lab_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Leases, Supplemental Cash Flow [Table Text Block]</link:label>
    <link:label id="lab_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A_label_en-US" xlink:label="lab_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Leases, Supplemental Cash Flow [Table Text Block]</link:label>
    <link:label id="lab_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A_documentation_en-US" xlink:label="lab_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Schedule of Leases, Supplemental Cash Flow [Table Text Block]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock" xlink:label="loc_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" xlink:to="lab_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueAbstract_4789CBAD5948C645E8113AB724E064A0_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueAbstract_4789CBAD5948C645E8113AB724E064A0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="loc_us-gaap_DisaggregationOfRevenueAbstract_4789CBAD5948C645E8113AB724E064A0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueAbstract_4789CBAD5948C645E8113AB724E064A0" xlink:to="lab_us-gaap_DisaggregationOfRevenueAbstract_4789CBAD5948C645E8113AB724E064A0" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" 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_D490F3CF0244C81AB6413AB724E0BAB1_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" xlink:type="arc" />
    <link:label id="lab_country_US_6502A2D0997A03A19F163AB724E156EB_terseLabel_en-US" xlink:label="lab_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">UNITED STATES</link:label>
    <link:label id="lab_country_US_6502A2D0997A03A19F163AB724E156EB_label_en-US" xlink:label="lab_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">UNITED STATES</link:label>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="loc_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:to="lab_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6_terseLabel_en-US" xlink:label="lab_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EMEA [Member]</link:label>
    <link:label id="lab_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6_label_en-US" xlink:label="lab_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EMEA [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EMEAMember" xlink:label="loc_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:to="lab_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:type="arc" />
    <link:label id="lab_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392_terseLabel_en-US" xlink:label="lab_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Other Regions [Member]</link:label>
    <link:label id="lab_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392_label_en-US" xlink:label="lab_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Other Regions [Member]</link:label>
    <link:label id="lab_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392_documentation_en-US" xlink:label="lab_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">All Other Regions [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllOtherRegionsMember" xlink:label="loc_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:to="lab_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" 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_43884B099CF808CB350F3AB724E2B3C1_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" xlink:type="arc" />
    <link:label id="lab_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634_verboseLabel_en-US" xlink:label="lab_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Revenues</link:label>
    <link:label id="lab_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634_label_en-US" xlink:label="lab_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenues</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:to="lab_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subtotal</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Less: accumulated depreciation</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:type="arc" />
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Property and equipment, net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized Computer Software, Net</link:label>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A_label_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Computer Software, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareNet" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:type="arc" />
    <link:label id="lab_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation</link:label>
    <link:label id="lab_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E_label_en-US" xlink:label="lab_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" xlink:to="lab_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized Computer Software, Amortization</link:label>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E_label_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Computer Software, Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD" xlink:type="arc" />
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A_terseLabel_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Benefits</link:label>
    <link:label id="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A_label_en-US" xlink:label="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pension and Other Postretirement Benefits Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A" xlink:to="lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A" xlink:type="arc" />
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D_verboseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Summary of Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_08BCA35194533A1FA4B81ECFD4F88B58_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract_08BCA35194533A1FA4B81ECFD4F88B58" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_08BCA35194533A1FA4B81ECFD4F88B58" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract_08BCA35194533A1FA4B81ECFD4F88B58" xlink:to="lab_us-gaap_DebtDisclosureAbstract_08BCA35194533A1FA4B81ECFD4F88B58" xlink:type="arc" />
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D_verboseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Revolving Line of Credit</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D" xlink:to="lab_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D" xlink:type="arc" />
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_C4BBC73BDBBA85ECB97F1ECFD71AE7BC_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_C4BBC73BDBBA85ECB97F1ECFD71AE7BC" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_C4BBC73BDBBA85ECB97F1ECFD71AE7BC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_C4BBC73BDBBA85ECB97F1ECFD71AE7BC" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_C4BBC73BDBBA85ECB97F1ECFD71AE7BC" xlink:type="arc" />
    <link:label id="lab_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22_terseLabel_en-US" xlink:label="lab_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Nature of the Business</link:label>
    <link:label id="lab_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22_label_en-US" xlink:label="lab_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Nature of Operations [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NatureOfOperations" xlink:label="loc_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22" xlink:to="lab_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of fair values of derivative instruments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of derivative instruments gain (loss)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combinations</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" 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, Options, Grants in Period, Gross</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" 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, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" 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, Expiration Period</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" 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, Expiration Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" xlink:type="arc" />
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9_verboseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Compensation not yet recognized, options</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Summary of stock option plan activity</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Number of Shares, Beginning Balance</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" xlink:type="arc" />
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Number of Shares, Exercised</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Number of Shares, Canceled</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" 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 in Period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_47B1DCCF8A9069ACED4A3AF307F63DA9_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_47B1DCCF8A9069ACED4A3AF307F63DA9" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Number of Shares, Ending Balance</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_47B1DCCF8A9069ACED4A3AF307F63DA9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_47B1DCCF8A9069ACED4A3AF307F63DA9" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_47B1DCCF8A9069ACED4A3AF307F63DA9" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" 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, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price, Beginning Balance (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price, Granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price, Exercised (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price, Canceled (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" 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, Forfeitures in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1A0F23B092A7AC52FEC83AF307F8CDD5_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1A0F23B092A7AC52FEC83AF307F8CDD5" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price, Ending Balance (in dollars per share)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1A0F23B092A7AC52FEC83AF307F8CDD5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1A0F23B092A7AC52FEC83AF307F8CDD5" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1A0F23B092A7AC52FEC83AF307F8CDD5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" 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, Options, Additional Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Number of Shares, Vested and expected to vest</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" 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, Number</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Number of Shares, Exercisable</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price, Vested and expected to vest (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Exercise Price, Exercisable (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Remaining Contractual Term, Vested and expected to vest</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Remaining Contractual Term, Ending Balance</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689_verboseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Remaining Contractual Term, Exercisable</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value, Ending Balance</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value, Vested and expected to vest</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:type="arc" />
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF_periodEndLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value, Exercisable</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" 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, Intrinsic Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:type="arc" />
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1_terseLabel_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share based compensation expense by classification [Table]</link:label>
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1_label_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share based compensation expense by classification [Table]</link:label>
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1_documentation_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share based compensation expense by classification [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationTable" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:to="lab_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:type="arc" />
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C_terseLabel_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share based compensation expense by classification [Line Items]</link:label>
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C_label_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share based compensation expense by classification [Line Items]</link:label>
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C_documentation_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">[Line Items] for Share based compensation expense by classification [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationLineItems" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:to="lab_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:type="arc" />
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F_terseLabel_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share based compensation expense by classification [Table Text Block]</link:label>
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F_label_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share based compensation expense by classification [Table Text Block]</link:label>
    <link:label id="lab_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F_documentation_en-US" xlink:label="lab_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">[Table Text Block] for Share based compensation expense by classification [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationTableTextBlock" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:to="lab_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Summary of stock option plan activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Fair value of each option grant computed on the grant date</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Summary of information about stock options outstanding</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Option, Exercise Price Range [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Activities relating to time based restricted stock units</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Activities relating to performance based restricted stock units</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Performance Shares, Activity [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock" xlink:label="loc_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7" xlink:to="lab_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Payment Award, Employee Stock Purchase Plan, Valuation Assumptions [Table Text Block]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Payment Award, Employee Stock Purchase Plan, Valuation Assumptions [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of goodwill</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other intangible assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Estimated future amortization expense related to current intangible assets</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A_terseLabel_en-US" xlink:label="lab_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Practical Expedient [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A_label_en-US" xlink:label="lab_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Practical Expedient [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuePracticalExpedientAbstract" xlink:label="loc_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A" xlink:to="lab_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1_label_en-US" xlink:label="lab_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Net [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNetAbstract" xlink:label="loc_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:to="lab_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC" 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_0B213EBE60573F2D0B241ECFD48E75EC_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB" xlink:type="arc" />
    <link:label id="lab_us-gaap_InventoryNet_7F8A655233DFE0BD454E1ECFD48F395F_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet_7F8A655233DFE0BD454E1ECFD48F395F" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_7F8A655233DFE0BD454E1ECFD48F395F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet_7F8A655233DFE0BD454E1ECFD48F395F" xlink:to="lab_us-gaap_InventoryNet_7F8A655233DFE0BD454E1ECFD48F395F" xlink:type="arc" />
    <link:label id="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operations and Disposal Groups [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED" xlink:to="lab_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration</link:label>
    <link:label id="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257_label_en-US" xlink:label="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Consideration</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257" xlink:to="lab_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal</link:label>
    <link:label id="lab_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6_label_en-US" xlink:label="lab_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" xlink:label="loc_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6" xlink:to="lab_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Details of Quarterly Information (Unaudited)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D_label_en-US" xlink:label="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Quarterly Financial Information [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D" xlink:to="lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Basic and Diluted Net Income Per Share</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic and Diluted [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:to="lab_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-average shares outstanding</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Dilutive effect of employee stock plans</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Diluted weighted-average shares outstanding</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B" xlink:to="lab_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257" xlink:to="lab_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257" xlink:type="arc" />
    <link:label id="lab_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81_terseLabel_en-US" xlink:label="lab_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Letters of Credit Outstanding, Amount</link:label>
    <link:label id="lab_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81_label_en-US" xlink:label="lab_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Letters of Credit Outstanding, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81" xlink:to="lab_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81" xlink:type="arc" />
    <link:label id="lab_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6_verboseLabel_en-US" xlink:label="lab_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Revolving Line of Credit (Textual) [Abstract]</link:label>
    <link:label id="lab_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6_label_en-US" xlink:label="lab_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revolving Line of Credit (Textual) [Abstract]</link:label>
    <link:label id="lab_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6_documentation_en-US" xlink:label="lab_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Revolving Line of Credit.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RevolvingLineOfCreditTextualAbstract" xlink:label="loc_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:to="lab_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD_verboseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Maximum amount available for borrowing under credit facility</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD_verboseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Interest on loans under the credit facility</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Interest Rate Description</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateDescription" xlink:label="loc_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD" xlink:to="lab_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD" xlink:type="arc" />
    <link:label id="lab_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839_verboseLabel_en-US" xlink:label="lab_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Interest rate above the LIBOR Daily Floating Rate or the Prime Rate of Lender under condition one</link:label>
    <link:label id="lab_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839_label_en-US" xlink:label="lab_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Rate Above LIBOR Under Condition One</link:label>
    <link:label id="lab_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839_documentation_en-US" xlink:label="lab_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Interest rate above LIBOR under condition one.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_InterestRateAboveLIBORUnderConditionOne" xlink:label="loc_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:to="lab_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:type="arc" />
    <link:label id="lab_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0_terseLabel_en-US" xlink:label="lab_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest Rate Above the Federal Fund Rate Under Condition Two</link:label>
    <link:label id="lab_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0_label_en-US" xlink:label="lab_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Rate Above the Federal Fund Rate Under Condition Two</link:label>
    <link:label id="lab_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0_documentation_en-US" xlink:label="lab_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Interest Rate Above the Federal Funds Rate Under Condition Two</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo" xlink:label="loc_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" xlink:to="lab_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" xlink:type="arc" />
    <link:label id="lab_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684_verboseLabel_en-US" xlink:label="lab_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Interest rate above the LIBOR rate plus under condition two</link:label>
    <link:label id="lab_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684_label_en-US" xlink:label="lab_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Rate Above the Eurodollar Rate Under Condition Two</link:label>
    <link:label id="lab_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684_documentation_en-US" xlink:label="lab_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Interest rate above the Eurodollar rate Under Condition Two.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo" xlink:label="loc_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:to="lab_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283_verboseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Termination date for all outstanding amount and credit facility</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Expiration Date</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283" xlink:to="lab_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Amount Outstanding</link:label>
    <link:label id="lab_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE_label_en-US" xlink:label="lab_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term Line of Credit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE" xlink:to="lab_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE" xlink:type="arc" />
    <link:label id="lab_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F_terseLabel_en-US" xlink:label="lab_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Letter of credit facility, maximum borrowing</link:label>
    <link:label id="lab_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F_label_en-US" xlink:label="lab_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Letter of credit facility, maximum borrowing</link:label>
    <link:label id="lab_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F_documentation_en-US" xlink:label="lab_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Letter of credit facility, maximum borrowing</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Letterofcreditfacilitymaximumborrowing" xlink:label="loc_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" xlink:to="lab_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" xlink:type="arc" />
    <link:label id="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Commitment Fee Percentage</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Commitment Fee Percentage</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A" xlink:to="lab_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A" xlink:type="arc" />
    <link:label id="lab_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633_terseLabel_en-US" xlink:label="lab_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of credit, maximum amount</link:label>
    <link:label id="lab_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633_label_en-US" xlink:label="lab_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of credit, maximum amount</link:label>
    <link:label id="lab_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633_documentation_en-US" xlink:label="lab_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Line of credit, maximum amount</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Lineofcreditmaximumamount" xlink:label="loc_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" xlink:to="lab_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" xlink:type="arc" />
    <link:label id="lab_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C_label_en-US" xlink:label="lab_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer Initial application [Abstract]</link:label>
    <link:label id="lab_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C_documentation_en-US" xlink:label="lab_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer Initial application [Abstract]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RevenuefromContractwithCustomerInitialapplicationAbstract" xlink:label="loc_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C" xlink:to="lab_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Table]</link:label>
    <link:label id="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25_label_en-US" xlink:label="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:to="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:type="arc" />
    <link:label id="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103_terseLabel_en-US" xlink:label="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Initial Application Period Cumulative Effect Transition [Axis]</link:label>
    <link:label id="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103_label_en-US" xlink:label="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Initial Application Period Cumulative Effect Transition [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis" xlink:label="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:to="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:type="arc" />
    <link:label id="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D_terseLabel_en-US" xlink:label="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Initial Application Period Cumulative Effect Transition [Domain]</link:label>
    <link:label id="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D_label_en-US" xlink:label="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Initial Application Period Cumulative Effect Transition [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain" xlink:label="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:to="lab_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" 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_9CE84D8996DD75729A621ECFD7173C8B_label_en-US" xlink:label="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:to="lab_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:type="arc" />
    <link:label id="lab_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C_terseLabel_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" 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_C83DD84920B137A9A52B1ECFD7171C3C_label_en-US" xlink:label="lab_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" xlink:to="lab_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Line Items]</link:label>
    <link:label id="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2_label_en-US" xlink:label="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:to="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F_label_en-US" xlink:label="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Initial Application Period Cumulative Effect Transition [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:to="lab_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAbstract_1F6397904CA8718613A935EADD0232F1_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAbstract_1F6397904CA8718613A935EADD0232F1" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_1F6397904CA8718613A935EADD0232F1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_1F6397904CA8718613A935EADD0232F1" xlink:to="lab_us-gaap_CashAndCashEquivalentsAbstract_1F6397904CA8718613A935EADD0232F1" xlink:type="arc" />
    <link:label id="lab_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC_terseLabel_en-US" xlink:label="lab_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies [Table]</link:label>
    <link:label id="lab_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC_label_en-US" xlink:label="lab_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Table]</link:label>
    <link:label id="lab_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC_documentation_en-US" xlink:label="lab_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accounting Policies [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccountingPoliciesTable" xlink:label="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="lab_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:type="arc" />
    <link:label id="lab_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5_verboseLabel_en-US" xlink:label="lab_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Allowance for product returns</link:label>
    <link:label id="lab_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5_label_en-US" xlink:label="lab_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Allowance for product returns [Member]</link:label>
    <link:label id="lab_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5_documentation_en-US" xlink:label="lab_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Allowance for product returns [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforproductreturnsMember" xlink:label="loc_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:to="lab_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:type="arc" />
    <link:label id="lab_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600_terseLabel_en-US" xlink:label="lab_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Allowance for price protection</link:label>
    <link:label id="lab_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600_label_en-US" xlink:label="lab_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Allowance For Price Protection [Member]</link:label>
    <link:label id="lab_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600_documentation_en-US" xlink:label="lab_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Allowance For Price Protection [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceForPriceProtectionMember" xlink:label="loc_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:to="lab_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:to="lab_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:to="lab_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:type="arc" />
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3_terseLabel_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer Concentration Risk</link:label>
    <link:label id="lab_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3_label_en-US" xlink:label="lab_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:to="lab_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts Receivable</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:to="lab_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:type="arc" />
    <link:label id="lab_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70_terseLabel_en-US" xlink:label="lab_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" 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_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70_label_en-US" xlink:label="lab_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Benchmark [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" xlink:to="lab_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" xlink:type="arc" />
    <link:label id="lab_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D_terseLabel_en-US" xlink:label="lab_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer [Axis]</link:label>
    <link:label id="lab_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D_label_en-US" xlink:label="lab_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:to="lab_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:type="arc" />
    <link:label id="lab_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858_terseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:label id="lab_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858_label_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="lab_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:type="arc" />
    <link:label id="lab_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC_terseLabel_en-US" xlink:label="lab_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Two Customers [Member]</link:label>
    <link:label id="lab_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC_label_en-US" xlink:label="lab_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Two Customers [Member]</link:label>
    <link:label id="lab_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC_documentation_en-US" xlink:label="lab_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Two Customers [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TwoCustomersMember" xlink:label="loc_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:to="lab_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:type="arc" />
    <link:label id="lab_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549_terseLabel_en-US" xlink:label="lab_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amazon [Member]</link:label>
    <link:label id="lab_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549_label_en-US" xlink:label="lab_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amazon [Member]</link:label>
    <link:label id="lab_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549_documentation_en-US" xlink:label="lab_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amazon [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmazonMember" xlink:label="loc_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:to="lab_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:type="arc" />
    <link:label id="lab_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55_terseLabel_en-US" xlink:label="lab_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Three Customers</link:label>
    <link:label id="lab_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55_label_en-US" xlink:label="lab_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Three Customers [Member]</link:label>
    <link:label id="lab_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55_documentation_en-US" xlink:label="lab_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Three Customers [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ThreeCustomersMember" xlink:label="loc_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:to="lab_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:type="arc" />
    <link:label id="lab_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1_terseLabel_en-US" xlink:label="lab_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Two Customers Secured Balance With Guaranteed Letters Of Credit</link:label>
    <link:label id="lab_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1_label_en-US" xlink:label="lab_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Two Customers Secured Balance With Guaranteed Letters Of Credit [Member]</link:label>
    <link:label id="lab_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1_documentation_en-US" xlink:label="lab_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Two Customers Secured Balance With Guaranteed Letters Of Credit [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember" xlink:label="loc_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:to="lab_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:type="arc" />
    <link:label id="lab_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B_terseLabel_en-US" xlink:label="lab_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales On Demand Corporation (SODC)</link:label>
    <link:label id="lab_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B_label_en-US" xlink:label="lab_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sales On Demand Corporation (SODC) [Member]</link:label>
    <link:label id="lab_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B_documentation_en-US" xlink:label="lab_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Sales On Demand Corporation (SODC) [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationSODCMember" xlink:label="loc_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:to="lab_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:type="arc" />
    <link:label id="lab_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574_terseLabel_en-US" xlink:label="lab_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Robopolis SAS</link:label>
    <link:label id="lab_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574_label_en-US" xlink:label="lab_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Robopolis SAS [Member]</link:label>
    <link:label id="lab_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574_documentation_en-US" xlink:label="lab_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Robopolis SAS [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisSASMember" xlink:label="loc_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:to="lab_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:type="arc" />
    <link:label id="lab_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A_terseLabel_en-US" xlink:label="lab_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies [Line Items]</link:label>
    <link:label id="lab_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A_label_en-US" xlink:label="lab_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Line Items]</link:label>
    <link:label id="lab_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A_documentation_en-US" xlink:label="lab_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">[Line Items] for Accounting Policies [Table]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccountingPoliciesLineItems" xlink:label="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="lab_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:type="arc" />
    <link:label id="lab_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B_terseLabel_en-US" xlink:label="lab_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Description</link:label>
    <link:label id="lab_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B_label_en-US" xlink:label="lab_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Warranty, Term</link:label>
    <link:label id="lab_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B_documentation_en-US" xlink:label="lab_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Warranty, Term</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_WarrantyTerm" xlink:label="loc_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:to="lab_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Valuation allowances and reserves</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735_terseLabel_en-US" xlink:label="lab_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735_label_en-US" xlink:label="lab_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:to="lab_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:type="arc" />
    <link:label id="lab_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512_terseLabel_en-US" xlink:label="lab_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Warrant term</link:label>
    <link:label id="lab_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512_label_en-US" xlink:label="lab_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Extended Product Warranty Description</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyDescription" xlink:label="loc_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:to="lab_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:type="arc" />
    <link:label id="lab_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost and equity method investments</link:label>
    <link:label id="lab_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187_label_en-US" xlink:label="lab_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments in and Advance to Affiliates, Subsidiaries, Associates, and Joint Ventures</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="loc_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:to="lab_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:type="arc" />
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized computer software</link:label>
    <link:label id="lab_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C_label_en-US" xlink:label="lab_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Computer Software, Gross</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:to="lab_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization expense</link:label>
    <link:label id="lab_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87_label_en-US" xlink:label="lab_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentForAmortization" xlink:label="loc_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:to="lab_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706_terseLabel_en-US" xlink:label="lab_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Advertising Expense</link:label>
    <link:label id="lab_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706_label_en-US" xlink:label="lab_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Advertising Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="loc_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:to="lab_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:type="arc" />
    <link:label id="lab_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E_terseLabel_en-US" xlink:label="lab_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017, income tax expense (benefit), transition tax fior accumulated foreign earnings</link:label>
    <link:label id="lab_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E_label_en-US" xlink:label="lab_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017, Transition Tax for Accumulated Foreign Earnings, Provisional Income Tax Expense (Benefit)</link:label>
    <link:label id="lab_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E_documentation_en-US" xlink:label="lab_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017, Transition Tax for Accumulated Foreign Earnings, Provisional Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:to="lab_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:type="arc" />
    <link:label id="lab_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A_terseLabel_en-US" xlink:label="lab_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017, income tax expense (benefit)</link:label>
    <link:label id="lab_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A_label_en-US" xlink:label="lab_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017, Provisional Income Tax Expense (Benefit)</link:label>
    <link:label id="lab_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A_documentation_en-US" xlink:label="lab_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017, Provisional Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:to="lab_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:type="arc" />
    <link:label id="lab_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act of 2017, income tax expense (benefit), remeasurement of certain deferred tax assets and liabilities</link:label>
    <link:label id="lab_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37_label_en-US" xlink:label="lab_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Cuts and Jobs Act, Change in Tax Rate, Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:to="lab_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration risk percentage</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk, Percentage</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:to="lab_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Antidilutive securities excluded from computation of earnings per share (in shares)</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" xlink:type="arc" />
    <link:label id="lab_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3_terseLabel_en-US" xlink:label="lab_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement [Axis]</link:label>
    <link:label id="lab_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3_label_en-US" xlink:label="lab_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RestatementAxis" xlink:label="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:to="lab_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:type="arc" />
    <link:label id="lab_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256_terseLabel_en-US" xlink:label="lab_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement [Domain]</link:label>
    <link:label id="lab_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256_label_en-US" xlink:label="lab_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RestatementDomain" xlink:label="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:to="lab_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62_terseLabel_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62_label_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:to="lab_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:type="arc" />
    <link:label id="lab_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63_label_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:to="lab_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:type="arc" />
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7_terseLabel_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of plans</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7_label_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" 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 Plans</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7_documentation_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" 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, Number Of Plans</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" xlink:to="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" xlink:type="arc" />
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5_terseLabel_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share conversion ratio</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5_label_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" 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 Conversion Ratio</link:label>
    <link:label id="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5_documentation_en-US" xlink:label="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" 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, Award Conversion Ratio</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" xlink:to="lab_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Components of accrued expenses</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable, Current [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrentAbstract" xlink:label="loc_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="lab_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1_verboseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued warranty</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Accrual, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6_terseLabel_en-US" xlink:label="lab_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued other compensation</link:label>
    <link:label id="lab_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6_label_en-US" xlink:label="lab_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Employee-related Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6" xlink:to="lab_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued bonus</link:label>
    <link:label id="lab_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB_label_en-US" xlink:label="lab_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Bonuses, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="loc_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB" xlink:to="lab_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB" xlink:type="arc" />
    <link:label id="lab_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE_terseLabel_en-US" xlink:label="lab_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued sales and other indirect taxes payable</link:label>
    <link:label id="lab_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE_label_en-US" xlink:label="lab_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Sales Tax</link:label>
    <link:label id="lab_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE_documentation_en-US" xlink:label="lab_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accrued Sales Tax</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccruedSalesTax" xlink:label="loc_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" xlink:to="lab_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" xlink:type="arc" />
    <link:label id="lab_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2_verboseLabel_en-US" xlink:label="lab_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued direct fulfillment costs</link:label>
    <link:label id="lab_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2_label_en-US" xlink:label="lab_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Direct Fulfillment Costs</link:label>
    <link:label id="lab_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2_documentation_en-US" xlink:label="lab_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accrued direct fulfillment costs.</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccruedDirectFulfillmentCosts" xlink:label="loc_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:to="lab_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued federal and state income taxes</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851" xlink:to="lab_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued other</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Accrued Liabilities, Current</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD" xlink:type="arc" />
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_1FA25D27834C40D6BC6A3C7CD7FA5D89_totalLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent_1FA25D27834C40D6BC6A3C7CD7FA5D89" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses, total</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_1FA25D27834C40D6BC6A3C7CD7FA5D89" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent_1FA25D27834C40D6BC6A3C7CD7FA5D89" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent_1FA25D27834C40D6BC6A3C7CD7FA5D89" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Rental expense under operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Rent Expense, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="loc_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD" xlink:to="lab_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Summary of future minimum rental payments under operating leases</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">2018</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments Due, Next Twelve Months</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">2019</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Two Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">2020</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Three Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">2021</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Four Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">2022</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due in Five Years</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA" 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_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments, Due Thereafter</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total minimum lease payments</link:label>
    <link:label id="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8_label_en-US" xlink:label="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Leases, Future Minimum Payments Due</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDue" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8" xlink:to="lab_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB_terseLabel_en-US" xlink:label="lab_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contractual Obligation</link:label>
    <link:label id="lab_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB_label_en-US" xlink:label="lab_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contractual Obligation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractualObligation" xlink:label="loc_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB" xlink:to="lab_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB" xlink:type="arc" />
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" 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_DF80C634E66A6743ED4620C3D605427C_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:to="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:type="arc" />
    <link:label id="lab_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2_terseLabel_en-US" xlink:label="lab_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Available-for-sale Securities, Major Types of Debt and Equity Securities [Axis]</link:label>
    <link:label id="lab_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2_label_en-US" xlink:label="lab_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial Instrument [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:to="lab_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:type="arc" />
    <link:label id="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64_terseLabel_en-US" xlink:label="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financial Instruments [Domain]</link:label>
    <link:label id="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64_label_en-US" xlink:label="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial Instruments [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:to="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:type="arc" />
    <link:label id="lab_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0_terseLabel_en-US" xlink:label="lab_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate and government bonds</link:label>
    <link:label id="lab_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0_label_en-US" xlink:label="lab_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Bonds [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BondsMember" xlink:label="loc_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:to="lab_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Convertible note</link:label>
    <link:label id="lab_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B_label_en-US" xlink:label="lab_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Convertible Debt [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtMember" xlink:label="loc_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:to="lab_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-sale [Line Items]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-sale [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:to="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76_verboseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Components of available for sale securities</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-sale [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesAbstract" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917_verboseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Total short term investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available-for-sale Securities, Amortized Cost Basis</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesAmortizedCost" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:type="arc" />
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total short term investments, Fair Market Value</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" xlink:type="arc" />
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9_verboseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" xlink:type="arc" />
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D_verboseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by operating activities, net of the effects of acquisitions:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:type="arc" />
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D_verboseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D" xlink:type="arc" />
    <link:label id="lab_us-gaap_GainLossOnSaleOfEquityInvestments_1428576BD7DCA4C626CA20A688B06331_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfEquityInvestments_1428576BD7DCA4C626CA20A688B06331" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gain on sale of equity investment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainLossOnSaleOfEquityInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfEquityInvestments_1428576BD7DCA4C626CA20A688B06331" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfEquityInvestments_1428576BD7DCA4C626CA20A688B06331" xlink:to="lab_us-gaap_GainLossOnSaleOfEquityInvestments_1428576BD7DCA4C626CA20A688B06331" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_8248AAF88F44248D411620A688B06A82_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_8248AAF88F44248D411620A688B06A82" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gain on business acquisition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount" xlink:label="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_8248AAF88F44248D411620A688B06A82" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_8248AAF88F44248D411620A688B06A82" xlink:to="lab_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_8248AAF88F44248D411620A688B06A82" xlink:type="arc" />
    <link:label id="lab_us-gaap_ShareBasedCompensation_CC29B43F937DCFCDB3BB20A688B18ED2_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation_CC29B43F937DCFCDB3BB20A688B18ED2" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_CC29B43F937DCFCDB3BB20A688B18ED2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation_CC29B43F937DCFCDB3BB20A688B18ED2" xlink:to="lab_us-gaap_ShareBasedCompensation_CC29B43F937DCFCDB3BB20A688B18ED2" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes, net</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0_terseLabel_en-US" xlink:label="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0" 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_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0_label_en-US" xlink:label="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Operating Activities, Cash Flow Statement</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:label="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0" xlink:to="lab_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879_verboseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Changes in operating assets and liabilities &#8212; (use) source</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Inventory</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Other Operating Assets</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12_verboseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1_verboseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses and other liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Other Accrued Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85_verboseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue and customer advances</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5_verboseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Long-term liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Other Operating Liabilities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399" 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_8C25CEF63066CF49BD4220A688B39399_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF_verboseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Additions of property and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Change in other assets</link:label>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8_label_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for (Proceeds from) Other Investing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8" xlink:to="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from sale of equity investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale of Other Assets, Investing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities" xlink:label="loc_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B" xlink:to="lab_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from sale of business unit</link:label>
    <link:label id="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78_label_en-US" xlink:label="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Divestiture of Businesses</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78" xlink:to="lab_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Cash paid for business acquisitions, net of cash acquired</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2" 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_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Available-for-sale Securities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireAvailableForSaleSecurities" xlink:label="loc_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2" xlink:to="lab_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sales and maturities of investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale and Maturity of Debt Securities, Available-for-sale</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836" xlink:to="lab_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF_verboseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256_verboseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from employee stock plans</link:label>
    <link:label id="lab_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256_label_en-US" xlink:label="lab_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Plans</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256" xlink:to="lab_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Income tax withholding payment associated with restricted stock vesting</link:label>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024_label_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payment, Tax Withholding, Share-based Payment Arrangement</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024" xlink:to="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024" xlink:type="arc" />
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchases</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A" xlink:type="arc" />
    <link:label id="lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E_verboseLabel_en-US" xlink:label="lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Tax benefit of excess stock-based compensation deductions</link:label>
    <link:label id="lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E_label_en-US" xlink:label="lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Excess Tax Benefit from Share-based Compensation, Financing Activities</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:label="loc_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E" xlink:to="lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash (used in) provided by financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8" xlink:type="arc" />
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of exchange rate changes on cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691_totalLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net increase (decrease) in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691" xlink:to="lab_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_A73E001066442AFE17AA20A688BB38E2_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_A73E001066442AFE17AA20A688BB38E2" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_A73E001066442AFE17AA20A688BB38E2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_A73E001066442AFE17AA20A688BB38E2" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_A73E001066442AFE17AA20A688BB38E2" xlink:type="arc" />
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_E3B7E47BB98EE90706BE20A688BB24C6_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_E3B7E47BB98EE90706BE20A688BB24C6" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_E3B7E47BB98EE90706BE20A688BB24C6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_E3B7E47BB98EE90706BE20A688BB24C6" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_E3B7E47BB98EE90706BE20A688BB24C6" xlink:type="arc" />
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4_verboseLabel_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Supplemental disclosure of cash flow information</link:label>
    <link:label id="lab_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4_label_en-US" xlink:label="lab_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Supplemental Cash Flow Information [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:to="lab_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash paid for income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Taxes Paid</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxesPaid" xlink:label="loc_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E" xlink:to="lab_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E" xlink:type="arc" />
    <link:label id="lab_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970_terseLabel_en-US" xlink:label="lab_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additions of property and equipment included in accounts payable</link:label>
    <link:label id="lab_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970_label_en-US" xlink:label="lab_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Noncash or Part Noncash Acquisition, Fixed Assets Acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1" xlink:label="loc_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970" xlink:to="lab_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementAbstract_A003FB5BD43C8C64E3A620A688F2C8B0_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract_A003FB5BD43C8C64E3A620A688F2C8B0" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_A003FB5BD43C8C64E3A620A688F2C8B0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract_A003FB5BD43C8C64E3A620A688F2C8B0" xlink:to="lab_us-gaap_IncomeStatementAbstract_A003FB5BD43C8C64E3A620A688F2C8B0" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" 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, by Report Line [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:to="lab_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Allocation of Recognized Period Costs, Report Line [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="lab_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0_verboseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" xlink:to="lab_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595_verboseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Research and development</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" xlink:type="arc" />
    <link:label id="lab_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284_verboseLabel_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Selling and marketing</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:to="lab_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:type="arc" />
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F_verboseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">General and administrative</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" xlink:type="arc" />
    <link:label id="lab_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987_terseLabel_en-US" xlink:label="lab_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" xlink:to="lab_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" xlink:type="arc" />
    <link:label id="lab_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A_terseLabel_en-US" xlink:label="lab_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of product revenue</link:label>
    <link:label id="lab_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A_label_en-US" xlink:label="lab_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of product revenue</link:label>
    <link:label id="lab_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A_documentation_en-US" xlink:label="lab_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cost of product revenue</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Costofproductrevenue" xlink:label="loc_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:to="lab_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of acquired intangible assets</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost, Amortization</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3_totalLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total cost of revenue</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" xlink:type="arc" />
    <link:label id="lab_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817_label_en-US" xlink:label="lab_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:to="lab_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Operating expenses:</link:label>
    <link:label id="lab_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246_label_en-US" xlink:label="lab_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Expenses [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="lab_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55_verboseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Research and development</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" xlink:type="arc" />
    <link:label id="lab_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099_verboseLabel_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Selling and marketing</link:label>
    <link:label id="lab_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099_label_en-US" xlink:label="lab_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling and Marketing Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:to="lab_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:type="arc" />
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A_verboseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">General and administrative</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General and Administrative Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:type="arc" />
    <link:label id="lab_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529_terseLabel_en-US" xlink:label="lab_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of acquired intangible assets</link:label>
    <link:label id="lab_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529_label_en-US" xlink:label="lab_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets, Nonproduction</link:label>
    <link:label id="lab_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529_documentation_en-US" xlink:label="lab_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets, Nonproduction</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmortizationofIntangibleAssetsNonproduction" xlink:label="loc_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:to="lab_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total operating expenses</link:label>
    <link:label id="lab_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A_label_en-US" xlink:label="lab_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Expenses</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:to="lab_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" 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_1EB350B45927F6F0003220A688F6FA62_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" xlink:to="lab_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" xlink:type="arc" />
    <link:label id="lab_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640_verboseLabel_en-US" xlink:label="lab_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Other income, net</link:label>
    <link:label id="lab_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640_label_en-US" xlink:label="lab_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Nonoperating Income (Expense)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:to="lab_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Income tax expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:type="arc" />
    <link:label id="lab_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:to="lab_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:type="arc" />
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net income per share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:to="lab_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Number of shares used in per share calculations:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Basic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" xlink:type="arc" />
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Diluted</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" xlink:type="arc" />
    <link:label id="lab_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Convertible Debt [Table Text Block]</link:label>
    <link:label id="lab_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077_label_en-US" xlink:label="lab_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Convertible Debt [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtTableTextBlock" xlink:label="loc_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077" xlink:to="lab_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Expense [Member]</link:label>
    <link:label id="lab_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A_label_en-US" xlink:label="lab_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Expense [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenseMember" xlink:label="loc_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:to="lab_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Two</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Three</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Four</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, Year Five</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" xlink:type="arc" />
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" xlink:type="arc" />
    <link:label id="lab_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B_terseLabel_en-US" xlink:label="lab_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-lived intangible assets, future amortization total</link:label>
    <link:label id="lab_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B_label_en-US" xlink:label="lab_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-lived intangible assets, future amortization total</link:label>
    <link:label id="lab_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B_documentation_en-US" xlink:label="lab_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Finite-lived intangible assets, future amortization total</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Finitelivedintangibleassetsfutureamortizationtotal" xlink:label="loc_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:to="lab_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:type="arc" />
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F_verboseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Amortization of intangible assets</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B_label_en-US" xlink:label="lab_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Recognition and Deferred Revenue [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRecognitionAndDeferredRevenueAbstract" xlink:label="loc_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B" xlink:to="lab_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B" xlink:type="arc" />
    <link:label id="lab_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA_terseLabel_en-US" xlink:label="lab_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Refund liability, product returns</link:label>
    <link:label id="lab_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA_label_en-US" xlink:label="lab_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Refund liability, product returns</link:label>
    <link:label id="lab_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA_documentation_en-US" xlink:label="lab_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Refund liability, product returns</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Refundliabilityproductreturns" xlink:label="loc_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" xlink:to="lab_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" xlink:type="arc" />
    <link:label id="lab_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E_terseLabel_en-US" xlink:label="lab_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Refund liability, other credits and incentives</link:label>
    <link:label id="lab_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E_label_en-US" xlink:label="lab_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Refund liability, other credits and incentives</link:label>
    <link:label id="lab_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E_documentation_en-US" xlink:label="lab_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Refund liability, other credits and incentives</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Refundliabilityothercreditsandincentives" xlink:label="loc_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" xlink:to="lab_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of income (loss) before provision for income taxes</link:label>
    <link:label id="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB_label_en-US" xlink:label="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB" xlink:to="lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Components of income tax expense</link:label>
    <link:label id="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062_label_en-US" xlink:label="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062" xlink:to="lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of the expected tax (benefit) expense</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26" xlink:to="lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Components of net deferred tax assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Deferred Tax Assets and Liabilities [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C" xlink:to="lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Schedule of adjustments to uncertain tax position</link:label>
    <link:label id="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305_label_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305" xlink:to="lab_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Revenues from External Customers and Long-Lived Assets [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="lab_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:type="arc" />
    <link:label id="lab_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE_terseLabel_en-US" xlink:label="lab_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-US [Member]</link:label>
    <link:label id="lab_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE_label_en-US" xlink:label="lab_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-US [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonUsMember" xlink:label="loc_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:to="lab_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:type="arc" />
    <link:label id="lab_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Domestic Destination [Member]</link:label>
    <link:label id="lab_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413_label_en-US" xlink:label="lab_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Domestic Destination [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticDestinationMember" xlink:label="loc_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:to="lab_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:type="arc" />
    <link:label id="lab_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2_terseLabel_en-US" xlink:label="lab_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographic Distribution, Foreign [Member]</link:label>
    <link:label id="lab_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2_label_en-US" xlink:label="lab_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographic Distribution, Foreign [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicDistributionForeignMember" xlink:label="loc_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:to="lab_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:type="arc" />
    <link:label id="lab_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A_terseLabel_en-US" xlink:label="lab_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographic Concentration Risk</link:label>
    <link:label id="lab_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A_label_en-US" xlink:label="lab_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographic Concentration Risk [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:to="lab_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:type="arc" />
    <link:label id="lab_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C_terseLabel_en-US" xlink:label="lab_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consumer Robot Revenue</link:label>
    <link:label id="lab_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C_label_en-US" xlink:label="lab_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consumer Robot Revenue [Member]</link:label>
    <link:label id="lab_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C_documentation_en-US" xlink:label="lab_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Consumer Robot Revenue [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ConsumerRobotRevenueMember" xlink:label="loc_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:to="lab_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:type="arc" />
    <link:label id="lab_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6_verboseLabel_en-US" xlink:label="lab_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="lab_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:type="arc" />
    <link:label id="lab_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED_terseLabel_en-US" xlink:label="lab_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">15 Customers</link:label>
    <link:label id="lab_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED_label_en-US" xlink:label="lab_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fifteen Customers [Member]</link:label>
    <link:label id="lab_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED_documentation_en-US" xlink:label="lab_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Fifteen Customers [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_FifteenCustomersMember" xlink:label="loc_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:to="lab_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED_terseLabel_en-US" xlink:label="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenues from External Customers and Long-Lived Assets [Line Items]</link:label>
    <link:label id="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED_label_en-US" xlink:label="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenues from External Customers and Long-Lived Assets [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="lab_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:type="arc" />
    <link:label id="lab_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of operating segments</link:label>
    <link:label id="lab_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2_label_en-US" xlink:label="lab_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number of Operating Segments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="loc_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:to="lab_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC" 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_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Revenue</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Net Income (Loss)</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16" xlink:to="lab_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic income per share (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Basic</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted income per share (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Earnings Per Share, Diluted</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" 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_0DAD53531AAD853C6B97355064C7E44F_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other income, net</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Nonoperating Income (Expense) [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" 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_3EF1786F22B12E5CB9C6355064CB4A13_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:type="arc" />
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gain (loss) recognized in income</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments Not Designated as Hedging Instruments, Gain (Loss), Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet" xlink:label="loc_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:to="lab_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:type="arc" />
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective portion, Gain (loss) recognized in OCI on Derivative</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" 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, before Tax</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective portion, Gain (loss) reclassified from accumulated OCI into income</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" xlink:type="arc" />
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Ineffective portion, Gain (loss) recognized in income</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" xlink:type="arc" />
    <link:label id="lab_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C_label_en-US" xlink:label="lab_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract Balances [Abstract]</link:label>
    <link:label id="lab_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C_documentation_en-US" xlink:label="lab_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Contract Balances [Abstract]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ContractBalancesAbstract" xlink:label="loc_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:to="lab_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78" xlink:type="arc" />
    <link:label id="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18_verboseLabel_en-US" xlink:label="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Activity related to the warranty accrual</link:label>
    <link:label id="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18_label_en-US" xlink:label="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:label="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:to="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968_periodStartLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Accrual</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="loc_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968" xlink:to="lab_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liability assumed</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Accrual, Additions from Business Acquisition</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Provision</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Accrual, Increase for Warranties Issued</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F_negatedLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Warranty usage</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Accrual, Decrease for Payments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F" xlink:type="arc" />
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrual_8A8572A5B67D63175A1D1ECFD47C6F6F_periodEndLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrual_8A8572A5B67D63175A1D1ECFD47C6F6F" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="loc_us-gaap_StandardProductWarrantyAccrual_8A8572A5B67D63175A1D1ECFD47C6F6F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrual_8A8572A5B67D63175A1D1ECFD47C6F6F" xlink:to="lab_us-gaap_StandardProductWarrantyAccrual_8A8572A5B67D63175A1D1ECFD47C6F6F" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E" xlink:to="lab_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="loc_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D" xlink:to="lab_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D" xlink:type="arc" />
    <link:label id="lab_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E_terseLabel_en-US" xlink:label="lab_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Variable Lease, Cost</link:label>
    <link:label id="lab_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E_label_en-US" xlink:label="lab_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Lease, Cost</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableLeaseCost" xlink:label="loc_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E" xlink:to="lab_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLeasesRentExpenseNet_F3BA748533230E0A7A0C3F65CCA08C1A_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasesRentExpenseNet_F3BA748533230E0A7A0C3F65CCA08C1A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Leases, Rent Expense, Net</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="loc_us-gaap_OperatingLeasesRentExpenseNet_F3BA748533230E0A7A0C3F65CCA08C1A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasesRentExpenseNet_F3BA748533230E0A7A0C3F65CCA08C1A" xlink:to="lab_us-gaap_OperatingLeasesRentExpenseNet_F3BA748533230E0A7A0C3F65CCA08C1A" xlink:type="arc" />
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA_terseLabel_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:label id="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA_label_en-US" xlink:label="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA" xlink:to="lab_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue Recognition, Policy [Policy Text Block]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Policy Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B" xlink:type="arc" />
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE_verboseLabel_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Stock-Based Compensation</link:label>
    <link:label id="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE_label_en-US" xlink:label="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation and Employee Benefit Plans [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE" xlink:to="lab_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE" xlink:type="arc" />
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C_verboseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C" xlink:type="arc" />
    <link:label id="lab_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward [Table]</link:label>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A_label_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardTable" xlink:label="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="lab_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:type="arc" />
    <link:label id="lab_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016_terseLabel_en-US" xlink:label="lab_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Evolution Robotics, Inc. (ER)</link:label>
    <link:label id="lab_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016_label_en-US" xlink:label="lab_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Evolution Robotics, Inc. (ER) [Member]</link:label>
    <link:label id="lab_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016_documentation_en-US" xlink:label="lab_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Evolution Robotics, Inc. (ER) [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EvolutionRoboticsIncErMember" xlink:label="loc_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:to="lab_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" 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_28650C6B3046E98F6BDC3AF2306FF2DB_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:type="arc" />
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" 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_74E5B8D853CC1628354C3AF2306F2BDE_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:type="arc" />
    <link:label id="lab_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Federal</link:label>
    <link:label id="lab_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF_label_en-US" xlink:label="lab_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" xlink:to="lab_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" xlink:type="arc" />
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD_terseLabel_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">State and Local Jurisdiction</link:label>
    <link:label id="lab_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD_label_en-US" xlink:label="lab_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State and Local Jurisdiction [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:to="lab_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:type="arc" />
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward [Axis]</link:label>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0_label_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward [Axis]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAxis" xlink:label="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:to="lab_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:type="arc" />
    <link:label id="lab_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF_label_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward, Name [Domain]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:to="lab_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research Tax Credit Carryforward</link:label>
    <link:label id="lab_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE_label_en-US" xlink:label="lab_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research Tax Credit Carryforward [Member]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchMember" xlink:label="loc_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:to="lab_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:type="arc" />
    <link:label id="lab_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward [Line Items]</link:label>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D_label_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardLineItems" xlink:label="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="lab_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:type="arc" />
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating loss carryforwards</link:label>
    <link:label id="lab_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329_label_en-US" xlink:label="lab_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Loss Carryforwards</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:to="lab_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:type="arc" />
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428_terseLabel_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax credit carryforward</link:label>
    <link:label id="lab_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428_label_en-US" xlink:label="lab_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Credit Carryforward, Amount</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:to="lab_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax penalties and interest accrued</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" 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/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" xlink:type="arc" />
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized tax benefits that would impact effective tax rate</link:label>
    <link:label id="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA_label_en-US" xlink:label="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits that Would Impact Effective Tax Rate</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:to="lab_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:type="arc" />
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Divestiture</link:label>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF_label_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF" xlink:to="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Revenue Recognized</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Revenue Recognized</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8" xlink:to="lab_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8" xlink:type="arc" />
    <link:label id="lab_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue, Methods, Inputs, and Assumptions Used [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333_label_en-US" xlink:label="lab_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue, Methods, Inputs, and Assumptions Used [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract" xlink:label="loc_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333" xlink:to="lab_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of allocation of purchase price</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56" xlink:to="lab_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56" xlink:type="arc" />
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of acquired intangible assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27" xlink:type="arc" />
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of pro forma results</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Pro Forma Information [Table Text Block]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9" xlink:to="lab_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9" xlink:type="arc" />
    <link:label id="lab_srt_ValuationAndQualifyingAccountsAbstract_B2CCFC3AAF0E951E9CFC2F937EFD2BB0_label_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsAbstract_B2CCFC3AAF0E951E9CFC2F937EFD2BB0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsAbstract" xlink:label="loc_srt_ValuationAndQualifyingAccountsAbstract_B2CCFC3AAF0E951E9CFC2F937EFD2BB0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsAbstract_B2CCFC3AAF0E951E9CFC2F937EFD2BB0" xlink:to="lab_srt_ValuationAndQualifyingAccountsAbstract_B2CCFC3AAF0E951E9CFC2F937EFD2BB0" xlink:type="arc" />
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0_terseLabel_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]</link:label>
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0_label_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:to="lab_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:type="arc" />
    <link:label id="lab_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE_terseLabel_en-US" xlink:label="lab_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Allowance for other credits and incentives [Member]</link:label>
    <link:label id="lab_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE_label_en-US" xlink:label="lab_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Allowance for other credits and incentives [Member]</link:label>
    <link:label id="lab_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE_documentation_en-US" xlink:label="lab_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Allowance for other credits and incentives [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforothercreditsandincentivesMember" xlink:label="loc_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:to="lab_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:type="arc" />
    <link:label id="lab_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772_terseLabel_en-US" xlink:label="lab_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Allowance for product returns [Member]</link:label>
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforproductreturnsMember" xlink:label="loc_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" xlink:to="lab_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" xlink:type="arc" />
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C_terseLabel_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]</link:label>
    <link:label id="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C_label_en-US" xlink:label="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:to="lab_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:type="arc" />
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Allowance for Doubtful Accounts, Premiums and Other Receivables</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Allowance for Doubtful Accounts, Premiums and Other Receivables</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:type="arc" />
    <link:label id="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91_label_en-US" xlink:label="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:label="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="lab_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20_periodStartLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Acquired balance</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Business Acquired</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment related to adoption of ASC 606</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Other Account</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Provision</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Cost and Expense</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Deduction</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Deduction</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDeductions" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other adjustments</link:label>
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE_label_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SEC Schedule, 12-09, Valuation Allowances and Reserves, Increase (Decrease) Adjustment</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:type="arc" />
    <link:label id="lab_us-gaap_ValuationAllowancesAndReservesBalance_D3A7488F6E2F4A2FD36A2F937F01D4E7_periodEndLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowancesAndReservesBalance_D3A7488F6E2F4A2FD36A2F937F01D4E7" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_D3A7488F6E2F4A2FD36A2F937F01D4E7" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowancesAndReservesBalance_D3A7488F6E2F4A2FD36A2F937F01D4E7" xlink:to="lab_us-gaap_ValuationAllowancesAndReservesBalance_D3A7488F6E2F4A2FD36A2F937F01D4E7" xlink:type="arc" />
    <link:label id="lab_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523_verboseLabel_en-US" xlink:label="lab_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Details of Quarterly Information (Unaudited)</link:label>
    <link:label id="lab_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523_label_en-US" xlink:label="lab_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selected Quarterly Financial Information [Abstract]</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SelectedQuarterlyFinancialInformationAbstract" xlink:label="loc_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:to="lab_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:type="arc" />
    <link:label id="lab_us-gaap_GrossProfit_DA1A4E335F5D657886431ECFD6A75750_verboseLabel_en-US" xlink:label="lab_us-gaap_GrossProfit_DA1A4E335F5D657886431ECFD6A75750" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_DA1A4E335F5D657886431ECFD6A75750" xlink:type="locator" />
    <link:labelArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit_DA1A4E335F5D657886431ECFD6A75750" xlink:to="lab_us-gaap_GrossProfit_DA1A4E335F5D657886431ECFD6A75750" xlink:type="arc" />
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>12
<FILENAME>irbt-20191228_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.irobot.com/role/AccountsReceivableAllowancesDetails" xlink:href="irbt-20191228.xsd#AccountsReceivableAllowancesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpenses" xlink:href="irbt-20191228.xsd#AccruedExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpensesDetails" xlink:href="irbt-20191228.xsd#AccruedExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/AccruedExpensesTables" xlink:href="irbt-20191228.xsd#AccruedExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsNotes" xlink:href="irbt-20191228.xsd#BusinessCombinationsNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsProFormaDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsProFormaDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsRobopolisAcquisitionDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:href="irbt-20191228.xsd#BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/BusinessCombinationsTables" xlink:href="irbt-20191228.xsd#BusinessCombinationsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingencies" xlink:href="irbt-20191228.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetails1" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesDetailsTextual" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesDetailsTextual" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/CommitmentsAndContingenciesTables" xlink:href="irbt-20191228.xsd#CommitmentsAndContingenciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedBalanceSheets" xlink:href="irbt-20191228.xsd#ConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:href="irbt-20191228.xsd#ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome" xlink:href="irbt-20191228.xsd#ConsolidatedStatementOfComprehensiveIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfCashFlows" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfIncome" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfIncome" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:href="irbt-20191228.xsd#ConsolidatedStatementsOfStockholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables" xlink:href="irbt-20191228.xsd#DerivativeInstrumentsAndHedgingActivitiesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DivestitureDetails" xlink:href="irbt-20191228.xsd#DivestitureDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DivestitureNotes" xlink:href="irbt-20191228.xsd#DivestitureNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/DocumentAndEntityInformation" xlink:href="irbt-20191228.xsd#DocumentAndEntityInformation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/EmployeeBenefitsDetails" xlink:href="irbt-20191228.xsd#EmployeeBenefitsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/EmployeeBenefitsNotes" xlink:href="irbt-20191228.xsd#EmployeeBenefitsNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurements" xlink:href="irbt-20191228.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables" xlink:href="irbt-20191228.xsd#FairValueMeasurementsConvertibleNoteTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsDetails" xlink:href="irbt-20191228.xsd#FairValueMeasurementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/FairValueMeasurementsTables" xlink:href="irbt-20191228.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssets" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:href="irbt-20191228.xsd#GoodwillAndOtherIntangibleAssetsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxes" xlink:href="irbt-20191228.xsd#IncomeTaxes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesNarrativeDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesNetDeferredTaxAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesTables" xlink:href="irbt-20191228.xsd#IncomeTaxesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:href="irbt-20191228.xsd#IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:href="irbt-20191228.xsd#IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/Inventory" xlink:href="irbt-20191228.xsd#Inventory" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/InventoryDetails" xlink:href="irbt-20191228.xsd#InventoryDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/InventoryTables" xlink:href="irbt-20191228.xsd#InventoryTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesDetails" xlink:href="irbt-20191228.xsd#LeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:href="irbt-20191228.xsd#LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesNotes" xlink:href="irbt-20191228.xsd#LeasesNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesPolicies" xlink:href="irbt-20191228.xsd#LeasesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/LeasesTables" xlink:href="irbt-20191228.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:href="irbt-20191228.xsd#MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/NatureOfBusiness" xlink:href="irbt-20191228.xsd#NatureOfBusiness" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/NetIncomePerShareDetails" xlink:href="irbt-20191228.xsd#NetIncomePerShareDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipment" xlink:href="irbt-20191228.xsd#PropertyAndEquipment" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipment1Details" xlink:href="irbt-20191228.xsd#PropertyAndEquipment1Details" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipmentDetails" xlink:href="irbt-20191228.xsd#PropertyAndEquipmentDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/PropertyAndEquipmentTables" xlink:href="irbt-20191228.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnaudited" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedDetails" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnauditedDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/QuarterlyInformationUnauditedTables" xlink:href="irbt-20191228.xsd#QuarterlyInformationUnauditedTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionContractBalancesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionContractBalancesTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionContractBalancesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionDisaggregationOfRevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionInitialApplicationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionInitialApplicationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionNotes" xlink:href="irbt-20191228.xsd#RevenueRecognitionNotes" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies" xlink:href="irbt-20191228.xsd#RevenueRecognitionPracticalExpedientsPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails" xlink:href="irbt-20191228.xsd#RevenueRecognitionSignificantJudgmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies" xlink:href="irbt-20191228.xsd#RevenueRecognitionSignificantJudgmentsPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/RevenueRecognitionTables" xlink:href="irbt-20191228.xsd#RevenueRecognitionTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/ShortTermInvestmentsDetails" xlink:href="irbt-20191228.xsd#ShortTermInvestmentsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensation" xlink:href="irbt-20191228.xsd#StockBasedCompensation" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationEsppDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationEsppDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationNarrativeDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationRsusAndPsusDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockCompExpenseClassificationDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsActivityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsAssumptionsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:href="irbt-20191228.xsd#StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockBasedCompensationTables" xlink:href="irbt-20191228.xsd#StockBasedCompensationTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockholdersEquity" xlink:href="irbt-20191228.xsd#StockholdersEquity" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/StockholdersEquityDetails" xlink:href="irbt-20191228.xsd#StockholdersEquityDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:href="irbt-20191228.xsd#SummaryOfSignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/WorkingCapitalFacilities" xlink:href="irbt-20191228.xsd#WorkingCapitalFacilities" xlink:type="simple" />
  <link:roleRef roleURI="http://www.irobot.com/role/WorkingCapitalFacilitiesDetails" xlink:href="irbt-20191228.xsd#WorkingCapitalFacilitiesDetails" 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.irobot.com/role/AccountsReceivableAllowancesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsAbstract" xlink:label="loc_srt_ValuationAndQualifyingAccountsAbstract_B2CCFC3AAF0E951E9CFC2F937EFD2BB0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsDisclosureTable" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" 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_srt_ValuationAndQualifyingAccountsAbstract_B2CCFC3AAF0E951E9CFC2F937EFD2BB0" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_AF7A8F0A246A25AF5B812F937EFD81FA" 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_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_AF7A8F0A246A25AF5B812F937EFD81FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" 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_ValuationAllowancesAndReservesTypeAxis_AF7A8F0A246A25AF5B812F937EFD81FA" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforothercreditsandincentivesMember" xlink:label="loc_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" 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_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" xlink:to="loc_irbt_AllowanceforothercreditsandincentivesMember_858C49AA17BEAFC3A81A2F937EFFD7CE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforproductreturnsMember" xlink:label="loc_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" 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_ValuationAllowancesAndReservesDomain_C263A8B57E3BC29BEE5F2F937EFF7059" xlink:to="loc_irbt_AllowanceforproductreturnsMember_B92A10965EBFBAC41A032F937EFF2772" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_ValuationAndQualifyingAccountsDisclosureLineItems" xlink:label="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" 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_srt_ValuationAndQualifyingAccountsDisclosureTable_39755E72DF0A709C38212F937EFDADD0" xlink:to="loc_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" 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_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables_7BAF5DD01B4BB45D142B2FFED6C07378" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MovementInValuationAllowancesAndReservesRollForward" xlink:label="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" 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_srt_ValuationAndQualifyingAccountsDisclosureLineItems_40AAA6BA2668F41561122F937EFF490C" xlink:to="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" 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_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_D7D1A80E2FEEA9DAA3792F937EFFCB20" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" 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_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired_F67A9513E7620EBE75FE2F937EFF29A2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" 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_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts_CF48CC152F94386DDE962F937EFF49FA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" 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_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense_9378080390350818956E2F937EFF04A5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDeductions" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" 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_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDeductions_885C319FEA7B7A76E12F2F937F012B2B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesAdjustments" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" 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_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesAdjustments_069640D9365788E0D99A2F937F01D9EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_D3A7488F6E2F4A2FD36A2F937F01D4E7" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInValuationAllowancesAndReservesRollForward_A2A49DE7B0599D89D2DB2F937EFF8F91" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_D3A7488F6E2F4A2FD36A2F937F01D4E7" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/AccruedExpenses" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_F53B856FF42CA538EA261ECFD6A040FE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" xlink:label="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C" 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_AccruedLiabilitiesCurrentAbstract_F53B856FF42CA538EA261ECFD6A040FE" xlink:to="loc_us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock_8F2802A1855BDA497AD01ECFD6A0404C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/AccruedExpensesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_765FCA75F2334591D7ED3C7CD7F8587D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrentAbstract" xlink:label="loc_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" 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_AccruedLiabilitiesCurrentAbstract_765FCA75F2334591D7ED3C7CD7F8587D" xlink:to="loc_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1" 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_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualCurrent_28B578FDD536CCE960CD3C7CD7F9B3A1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherEmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6" 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_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent_2F620D28C5CD50EEAB763C7CD7F9D2F6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedBonusesCurrent" xlink:label="loc_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB" 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_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_us-gaap_AccruedBonusesCurrent_1020EE8BCF20FFDD9F953C7CD7F99EAB" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccruedSalesTax" xlink:label="loc_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" 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_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_irbt_AccruedSalesTax_B71EE29A762A5A7230F13C7CD7F98EBE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccruedDirectFulfillmentCosts" xlink:label="loc_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_irbt_AccruedDirectFulfillmentCosts_499BA177059285922F753C7CD7FAD9D2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_120624C79AB82A3529423C7CD7FAC890" 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_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_120624C79AB82A3529423C7CD7FAC890" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851" 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_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_02C20DD967E3B8B847A73C7CD7F90851" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_8110C54C863BCB938C603C7CD7FA3DDD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_1FA25D27834C40D6BC6A3C7CD7FA5D89" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountsPayableCurrentAbstract_B965810C3D63AF9EAE3B3C7CD7F8DCEC" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_1FA25D27834C40D6BC6A3C7CD7FA5D89" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/AccruedExpensesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAbstract_F3F7FF3D2D7D1D32C3851ECFD61988F4" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB" 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_AccruedLiabilitiesCurrentAbstract_F3F7FF3D2D7D1D32C3851ECFD61988F4" xlink:to="loc_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_6ECEA6FE4C156B3A3CA31ECFD61928FB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsNotes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_90F13D10F6F1068943DE1ECFD534558D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationDisclosureTextBlock" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02" 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_BusinessCombinationsAbstract_90F13D10F6F1068943DE1ECFD534558D" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_1C0EA8D8526CAC397C4D1ECFD5341C02" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsProFormaDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_2563C49A8461EBF4CA171ECFD6F929F8" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_Revenues_2563C49A8461EBF4CA171ECFD6F929F8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaRevenue" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaRevenue_3AE5761A5271997EC3841ECFD6F92DBC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_FC0C79C97CF662A10B5A1ECFD6F9C68B" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_NetIncomeLoss_FC0C79C97CF662A10B5A1ECFD6F9C68B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss" xlink:label="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss_6CDE5BCF973B15229DE71ECFD6FA1B16" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_B32892B6E9A78FF3A7A81ECFD6FAA3CE" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_EarningsPerShareBasic_B32892B6E9A78FF3A7A81ECFD6FAA3CE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic_FB40D987521B49DD0E2B1ECFD6FABCFA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_A97E22B3DC4DE99353D91ECFD6FA3AC5" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_EarningsPerShareDiluted_A97E22B3DC4DE99353D91ECFD6FA3AC5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329" 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_BusinessCombinationsAbstract_05AB227B4E4D56BB3E111ECFD6F87BE9" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted_E7F40C7F6134C4C894621ECFD6FA3329" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_D2EE862B7527B522BDA0359C79EA3CC1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" 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_BusinessCombinationsAbstract_D2EE862B7527B522BDA0359C79EA3CC1" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_A70F4BC247C571D87801359C79EB5721" 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_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_A70F4BC247C571D87801359C79EB5721" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786" 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_A70F4BC247C571D87801359C79EB5721" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_33C80E3850D93B3AF5D8359C79EB6786" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_EF121798CDEEE56FC21A359C79EBBF31" 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_33C80E3850D93B3AF5D8359C79EB6786" xlink:to="loc_us-gaap_DistributionRightsMember_EF121798CDEEE56FC21A359C79EBBF31" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_3590F4628BA183C1CDCE359C79EC064A" 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_33C80E3850D93B3AF5D8359C79EB6786" xlink:to="loc_us-gaap_CustomerRelationshipsMember_3590F4628BA183C1CDCE359C79EC064A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_CD328DE409685C254A64359C79EC95C4" 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_33C80E3850D93B3AF5D8359C79EB6786" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_CD328DE409685C254A64359C79EC95C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_CEA54247B003BF32307E359C79ECE5D5" 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_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_CEA54247B003BF32307E359C79ECE5D5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_586986ACEBB731528D76359C79ECE269" 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_CEA54247B003BF32307E359C79ECE5D5" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_586986ACEBB731528D76359C79ECE269" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisMember" xlink:label="loc_irbt_RobopolisMember_2E251020DEF25D9A4193359C79EC0863" 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_586986ACEBB731528D76359C79ECE269" xlink:to="loc_irbt_RobopolisMember_2E251020DEF25D9A4193359C79EC0863" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" 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_ScheduleOfBusinessAcquisitionsByAcquisitionTable_C6A5E61539F4DAADD440359C79EAF329" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" 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_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_B28D82D064522DB24CC2359C79ED50F6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAcquiredFromAcquisition" xlink:label="loc_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" 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_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_CashAcquiredFromAcquisition_9E49BB3C0539B33722D7359C79ED411A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" 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_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_50FD5F33EDD0913226C4359C79ED3B39" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_50FD5F33EDD0913226C4359C79ED3B39" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_C59F210715F274699628359C79EE31AA" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_C59F210715F274699628359C79EE31AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_C0EDE1C303C77CB58013359C79EE2F56" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_C0EDE1C303C77CB58013359C79EE2F56" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_A6B2023469F352E56DE1359C79EE62BC" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_Goodwill_A6B2023469F352E56DE1359C79EE62BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15A10BC1A2FA0D59687F359C79EE03E9" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15A10BC1A2FA0D59687F359C79EE03E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_562BE33C026FA5D1CC62359C79EE8417" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_562BE33C026FA5D1CC62359C79EE8417" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_046373495F387736CC4D359C79EEAC96" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_046373495F387736CC4D359C79EEAC96" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable_966A4BE45A612F261408359C79EF2CA0" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses_766882BAFF963EA59085359C79EFA392" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities_3D8C34582B65898D4659359C79EFF41C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_5BF067B3EA525D46EEB8359C79EF679B" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_5BF067B3EA525D46EEB8359C79EF679B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_18D7527B7D19352DF359359C79EF8C33" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_D72410D5EDEEDFB98C51359C79ED68B9" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_A3EDFBD776CC441E230A359C79EF3057" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_28DA14937C0654B1C560359C79EFF082" 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_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_28DA14937C0654B1C560359C79EFF082" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_8B6ADD2336048A4BB06F359C79F0CF36" 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_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_8B6ADD2336048A4BB06F359C79F0CF36" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" 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_BusinessAcquisitionLineItems_36569D3B3873DF8B06C9359C79ED9217" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_787D181C6C9B46CE5CA9359C79F0BD46" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_E7A32A1894C8B08658873B192AE3ED21" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" 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_BusinessCombinationsAbstract_E7A32A1894C8B08658873B192AE3ED21" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" 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_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_2D461F4EADA5B8F516F83B192AE34E38" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" 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_2D461F4EADA5B8F516F83B192AE34E38" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationMember" xlink:label="loc_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" 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_62E477CAEEE44604A9F43B192AE42AC6" xlink:to="loc_irbt_SalesOnDemandCorporationMember_6AA1A71169A2C481B3E73B192AE40DE8" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisMember" xlink:label="loc_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" 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_BusinessAcquisitionAcquireeDomain_62E477CAEEE44604A9F43B192AE42AC6" xlink:to="loc_irbt_RobopolisMember_0B933FCFC4896D7BE0543B192AE41A94" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_15943F589C975DAC47613B192AE43A96" 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_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_15943F589C975DAC47613B192AE43A96" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447" 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_15943F589C975DAC47613B192AE43A96" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_5C5E4D874BEE266180DA3B192AE4D447" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_B2510B3D887E3D52B3913B192AE5FD06" 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_5C5E4D874BEE266180DA3B192AE4D447" xlink:to="loc_us-gaap_CustomerRelationshipsMember_B2510B3D887E3D52B3913B192AE5FD06" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_B25E070DB200B8E34EDB3B192AE5B2D4" 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_5C5E4D874BEE266180DA3B192AE4D447" xlink:to="loc_us-gaap_DistributionRightsMember_B25E070DB200B8E34EDB3B192AE5B2D4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionLineItems" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" 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_ScheduleOfBusinessAcquisitionsByAcquisitionTable_B490226ECC49B6678D6E3B192AE3D512" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesGross" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" 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_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_0C61E4E85C42B4FCA4A93B192AE5AD7A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" 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_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents_FC78340EA415CC165F473B192AE661AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables_8A2EE3F5CEEA65C430933B192AE6CCBB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory_9FF09F4D36DBE4C86FEF3B192AE69F54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther_1C9672E920A592E7CB9D3B192AE68180" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets_2F221929F9C0B66814A53B192AE67F05" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_8CFB08FCF8CEC2D27F783B192AE70571" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_Goodwill_8CFB08FCF8CEC2D27F783B192AE70571" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles_15248E11ACD069F59DCE3B192AE74BF4" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill" xlink:label="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:type="locator" />
    <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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill_D1345AA42898E089C7703B192AE716E0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities_73AD96A78ADAB64123403B192AE7A749" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther_7458DC0E33EECE57F4EB3B192AE72894" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities_B69A5EC82F33A163F69A3B192AE77033" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract_21CAAE92C0E3F907A4F43B192AE6E07A" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet_D2194CD9D37ACFA80AA73B192AE787E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount" xlink:label="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" 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_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_DE3C2EF9502898B3A57C3B192AE8F1BB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" 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_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_47825699DFA2E0ADBACB3B192AE8C482" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1" xlink:label="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" 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_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_FinitelivedIntangibleAssetsAcquired1_0EADA880FF41E0F0C6963B192AE83465" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets" xlink:label="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" 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_BusinessAcquisitionLineItems_B5A2DBD9314436774BE73B192AE561D7" xlink:to="loc_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets_4733F9B293D77CB578DB3B192AE8B1CA" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/BusinessCombinationsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsAbstract" xlink:label="loc_us-gaap_BusinessCombinationsAbstract_8A0DE291FA89D77FA8821ECFD6337AD5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56" 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_BusinessCombinationsAbstract_8A0DE291FA89D77FA8821ECFD6337AD5" xlink:to="loc_us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock_40BF2DECC8CC0E82BEF81ECFD6338A56" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27" 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_BusinessCombinationsAbstract_8A0DE291FA89D77FA8821ECFD6337AD5" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock_5E15E10AC959785FDACB1ECFD6340C27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionProFormaInformationTextBlock" xlink:label="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9" 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_BusinessCombinationsAbstract_8A0DE291FA89D77FA8821ECFD6337AD5" xlink:to="loc_us-gaap_BusinessAcquisitionProFormaInformationTextBlock_23FD5DA733F28FFA770A1ECFD634E5C9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingencies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_A7ED8EACB06AC24A3B641ECFD65CF901" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C" 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_CommitmentsAndContingenciesDisclosureAbstract_A7ED8EACB06AC24A3B641ECFD65CF901" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_013E05D753AC1DD92C5A1ECFD65D472C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_0AF5DE12D450994F9A4E1B459FEB7023" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="loc_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD" 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_CommitmentsAndContingenciesDisclosureAbstract_0AF5DE12D450994F9A4E1B459FEB7023" xlink:to="loc_us-gaap_OperatingLeasesRentExpenseNet_2BF59224ADE4220764911B459FEB60AD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" 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_CommitmentsAndContingenciesDisclosureAbstract_0AF5DE12D450994F9A4E1B459FEB7023" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB" 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_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent_F088696F543884167CA31B459FECFCBB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053" 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_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears_C1C9543CFADA00B721D21B459FECC053" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears_07D9FA716EAD49E54C7F1B459FEC7014" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1" 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_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears_6E44838F3302752DF83C1B459FEC27F1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears_955D5C9492D68A5A622E1B459FED1511" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter_D253170186FCA91470BE1B459FEDC2AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesFutureMinimumPaymentsDue" xlink:label="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract_F5BC1DF7AAFAE6C19E611B459FEC1A0A" xlink:to="loc_us-gaap_OperatingLeasesFutureMinimumPaymentsDue_C65C45BAA94542CE2A601B459FEDA8E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractualObligation" xlink:label="loc_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB" 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_CommitmentsAndContingenciesDisclosureAbstract_0AF5DE12D450994F9A4E1B459FEB7023" xlink:to="loc_us-gaap_ContractualObligation_A3F789733C792AC04A491B459FED36FB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesDetails1" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_BCF19CF23A9D6811BBB61ECFD47BE3D9" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:label="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" 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_CommitmentsAndContingenciesDisclosureAbstract_BCF19CF23A9D6811BBB61ECFD47BE3D9" xlink:to="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="loc_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968" 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_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:to="loc_us-gaap_StandardProductWarrantyAccrual_04A1C8E150AF06F87DC91ECFD47B3968" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1" 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_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition_AF5B07EB5D4E60FE010D1ECFD47BCFC1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualWarrantiesIssued" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63" 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_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued_FFA82FE766BECD3478B01ECFD47CBC63" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F" 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_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualPayments_A4771A840B564C64309B1ECFD47C740F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="loc_us-gaap_StandardProductWarrantyAccrual_8A8572A5B67D63175A1D1ECFD47C6F6F" 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_MovementInStandardProductWarrantyAccrualRollForward_D7748A3585EC8B9239211ECFD47B6A18" xlink:to="loc_us-gaap_StandardProductWarrantyAccrual_8A8572A5B67D63175A1D1ECFD47C6F6F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/CommitmentsAndContingenciesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447" 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_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308" xlink:to="loc_us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock_C0E0B92D00BBB682CBED2F8D3C47C447" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6" 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_CommitmentsAndContingenciesDisclosureAbstract_8BEA5F90E6D6FF88E34C2F8D3C47E308" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_F3C0E5CBE7D2BE76BFAB2F8D3C48E6F6" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" 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_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335" xlink:to="loc_us-gaap_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" 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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39" 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_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_0CFCEF873121419EF2743C7CD8C20B39" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A" 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_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesCurrent_F2170FDBC20792D61B613C7CD8C20B4A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsAndOtherReceivablesNetCurrent" xlink:label="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC" 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_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:to="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_F72F3434201EA77C3B353C7CD8C397CC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1" 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_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:to="loc_us-gaap_InventoryNet_457DAFC6FA7F46CD61213C7CD8C3D0B1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:to="loc_us-gaap_OtherAssetsCurrent_2A251BD0C7F62E8F26193C7CD8C33550" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D" 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_AssetsCurrentAbstract_AF48ECEFABC1259C2B0C3C7CD8C25689" xlink:to="loc_us-gaap_AssetsCurrent_62DFEA21EF1627EA04623C7CD8C3560D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE" 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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_B146CD7BC679711C54AF3C7CD8C373EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76" 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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_0A0E86167652B4CA65D33C7CD8C38F76" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015" 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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_4AFA0D709CA78F2093C33C7CD8C46015" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC" 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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_Goodwill_601DE7F1314474763C713C7CD8C421EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A" 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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_FADDE585F41F6B34C21B3C7CD8C43D9A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA" 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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_0913B9433E06E5EECA1B3C7CD8C42ADA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Assets" xlink:label="loc_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681" xlink:type="locator" />
    <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_AssetsAbstract_01F7DA504FE9CA9C6B193C7CD8C21E3C" xlink:to="loc_us-gaap_Assets_BC5AC2B80695D6F9B0B43C7CD8C46681" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" 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_StatementOfFinancialPositionAbstract_16EBFBE10D3FAE7576BA3C7CD8C19335" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" 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_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91" 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_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:to="loc_us-gaap_AccountsPayableCurrent_9F6D9BAB2FDAADFEB67F3C7CD8C5EE91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240" 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_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_04EC1664ADA7C64D89223C7CD8C5A240" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredRevenueCurrent" xlink:label="loc_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89" 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_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:to="loc_us-gaap_DeferredRevenueCurrent_93F5E72AAAA316AAC1083C7CD8C5BA89" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50" 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_LiabilitiesCurrentAbstract_439DCD6A55F0F2A7472B3C7CD8C501B9" xlink:to="loc_us-gaap_LiabilitiesCurrent_E139C1B165EE03274E813C7CD8C6DA50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_FFC1FA9CA6DA8FC562D63C7CD8C6F027" 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_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_FFC1FA9CA6DA8FC562D63C7CD8C6F027" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933" 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_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_06EEBF3FD9DEA4BE1B543C7CD8C66933" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C" 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_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_E34F6E9011CC18294CCB3C7CD8C6E85C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesNoncurrent" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_LiabilitiesNoncurrent_0484ED94524E9B966E083C7CD8C6EF3D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F" 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_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_Liabilities_97E321705726ECFCD0943C7CD8C68D6F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="loc_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250" 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_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_CommitmentsAndContingencies_DA898751371A53DC697D3C7CD8C72250" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_PreferredStockValue_402F33C387990645007B3C7CD8C7C36E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_CommonStockValue_102E6586DC9F074EE73E3C7CD8C792C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_D0ADF2AD2142184A21FA3C7CD8C7DBFE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5" 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_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_0E23960EAC3DDCABB94E3C7CD8C777B5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_3E7A4055DEB5434BE97D3C7CD8C7CF32" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_StockholdersEquity_B282D63F4967D17D702F3C7CD8C70846" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_48C25D69AB4420BECB463C7CD8C54BDF" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_81116D44EAB087C46A343C7CD8C85711" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_7477C3B2C2D0B85E69D61ECFD5F169CF" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC" 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_StatementOfFinancialPositionAbstract_7477C3B2C2D0B85E69D61ECFD5F169CF" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_8C2CFD3F4629A293F4831ECFD5F136BC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288" 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_StatementOfFinancialPositionAbstract_7477C3B2C2D0B85E69D61ECFD5F169CF" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_6AEEF5614E1281AC13031ECFD5F2D288" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_7477C3B2C2D0B85E69D61ECFD5F169CF" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_3E912C692CEDDC9482431ECFD5F224F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82" 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_StatementOfFinancialPositionAbstract_7477C3B2C2D0B85E69D61ECFD5F169CF" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_5C6932AE3A00BD68EDDB1ECFD5F22F82" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_7477C3B2C2D0B85E69D61ECFD5F169CF" xlink:to="loc_us-gaap_CommonStockSharesIssued_EF2AD443A966AE3EBAD21ECFD5F20CBB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_4F406361ACEC8B6D17801ECFD5F20EC5" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_7477C3B2C2D0B85E69D61ECFD5F169CF" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_4F406361ACEC8B6D17801ECFD5F20EC5" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59" 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_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92" xlink:to="loc_us-gaap_NetIncomeLoss_1E1EB12B1AA87183E8EA20A688E0DB59" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" 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_7D606EFAEE920A79A9CA20A688DF8A92" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029" 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_84D0E1488BE1F49F42DC20A688E0F292" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_65E8CE13A3B7305CB50B20A688E06029" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E" 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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax_3EB96792646F8D83C6B720A688E03B5E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052" 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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax_5B7DDA6B88DB8C332C9020A688E03052" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D" 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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_84D0E1488BE1F49F42DC20A688E0F292" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_4F7CC0DC0ADEFE46FB6920A688E1271D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE" 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_StatementOfIncomeAndComprehensiveIncomeAbstract_7D606EFAEE920A79A9CA20A688DF8A92" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_E0E967041BF0BB7CFEC220A688E18BEE" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" 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_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_33531027DDD15ABC8FDC20A688B06FBB" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" xlink:to="loc_us-gaap_NetIncomeLoss_33531027DDD15ABC8FDC20A688B06FBB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" 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_NetCashProvidedByUsedInOperatingActivitiesAbstract_F4601679A886954F136A20A688AF98C9" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_6B2CA9BEDEE9431A1EB320A688B0D81D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainLossOnSaleOfEquityInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfEquityInvestments_1428576BD7DCA4C626CA20A688B06331" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:to="loc_us-gaap_GainLossOnSaleOfEquityInvestments_1428576BD7DCA4C626CA20A688B06331" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount" xlink:label="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_8248AAF88F44248D411620A688B06A82" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:to="loc_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount_8248AAF88F44248D411620A688B06A82" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_CC29B43F937DCFCDB3BB20A688B18ED2" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:to="loc_us-gaap_ShareBasedCompensation_CC29B43F937DCFCDB3BB20A688B18ED2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_672DCA13F4A8B595788B20A688B1B432" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherOperatingActivitiesCashFlowStatement" xlink:label="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0" 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_6E9660D217896BCDF9D720A688B0631D" xlink:to="loc_us-gaap_OtherOperatingActivitiesCashFlowStatement_C075D8AA29FEB134B72F20A688B18DB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_6E9660D217896BCDF9D720A688B0631D" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_486E4C9BD56166F0B3DD20A688B16FE5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC" 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_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_34CF7CF25E8B39DE2EBC20A688B240FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918" 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_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingAssets_0DEB2A3015B51037BDCC20A688B2C918" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12" 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_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_29A4E200D32B18C6662B20A688B20D12" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherAccruedLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities_FB77B95E6F5991D925B620A688B261F1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_0308CF99588AD0245E4C20A688B27B85" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInOtherOperatingLiabilities" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5" 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_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingLiabilities_7D0B285F1DCDF8A243F820A688B20CB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399" xlink:type="locator" />
    <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_IncreaseDecreaseInOperatingCapitalAbstract_3D6FDDBBDF47C29C787120A688B13879" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_8C25CEF63066CF49BD4220A688B39399" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" 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_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_A49CF44A6A154136C76420A688B81225" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_65DE3400A3EF95F9757720A688B86DF8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities" xlink:label="loc_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities_D7B62B3AB18B4401B88B20A688B9577B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromDivestitureOfBusinesses" xlink:label="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_ProceedsFromDivestitureOfBusinesses_A4006FDD2A10E8FC346A20A688B9EE78" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_21E40F29898FA901DD8720A688B94FA9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsToAcquireAvailableForSaleSecurities" xlink:label="loc_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_PaymentsToAcquireAvailableForSaleSecurities_05484AB15104417A06C720A688B96DD2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities" xlink:label="loc_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities_5C5641F2C04F3333362220A688B93836" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B" xlink:type="locator" />
    <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_NetCashProvidedByUsedInInvestingActivitiesAbstract_C4FCAD97D3E4FF739EEC20A688B8D6CF" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_25781318856B4FEAA80920A688B9B97B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ProceedsFromStockPlans" xlink:label="loc_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:to="loc_us-gaap_ProceedsFromStockPlans_E3B1CE45E8E90A0698E520A688B93256" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_8A84C4BDC633D37AF84520A688BA8024" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A" 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_D9F842FF425CEBF6D0D120A688B99FEF" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_D67D89711D8E25B6E45220A688BAF80A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities" xlink:label="loc_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:to="loc_us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities_81019344FF9FF73CD8CD20A688BA9E7E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_D9F842FF425CEBF6D0D120A688B99FEF" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_EBCF380B4402E0A21E2E20A688BA42E8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA" 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_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents_9BE4065E044F9F06173C20A688BA7CCA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease" xlink:label="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease_5E1ABF1B06C8D16F42D320A688BB7691" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_A73E001066442AFE17AA20A688BB38E2" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_A73E001066442AFE17AA20A688BB38E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_E3B7E47BB98EE90706BE20A688BB24C6" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_E3B7E47BB98EE90706BE20A688BB24C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_E598E5EEAB0932D2B88D20A688AFD484" xlink:to="loc_us-gaap_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxesPaid" xlink:label="loc_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E" 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_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:to="loc_us-gaap_IncomeTaxesPaid_DAD756073344938007F820A688BB1D0E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1" xlink:label="loc_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970" 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_SupplementalCashFlowInformationAbstract_799D34C3E0C0959C840B20A688BB2AE4" xlink:to="loc_us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1_9AE19C33FBB2933363E220A688BC4970" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfIncome" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaap_IncomeStatementAbstract_A003FB5BD43C8C64E3A620A688F2C8B0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_10F7F07E22FECB1903F620A688F25776" 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_IncomeStatementAbstract_A003FB5BD43C8C64E3A620A688F2C8B0" xlink:to="loc_us-gaap_StatementTable_10F7F07E22FECB1903F620A688F25776" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" 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_StatementTable_10F7F07E22FECB1903F620A688F25776" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" 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_IncomeStatementLocationAxis_FC160D6CAD5F569DA33120A688F27A94" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" 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_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_CostOfSalesMember_88F7924D359C065E65C420A688F3ACB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" 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_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_E2C2F33A2778B62B1EE020A688F3A595" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_616EFDF9231F08F2DAC120A688F35284" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" 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_IncomeStatementLocationDomain_23BE07B2393B4D31BC8620A688F31F7B" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_0BBFD159FA671D7308AA20A688F43A0F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" 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_StatementTable_10F7F07E22FECB1903F620A688F25776" xlink:to="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" 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_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_Revenues_60E2A321C572950D03EF20A688F48987" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Costofproductrevenue" xlink:label="loc_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" 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_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_irbt_Costofproductrevenue_BA6EAB199E03597A5ED920A688F4A00A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSoldAmortization" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" 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_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSoldAmortization_DCA5A5E8C58D32265E0D20A688F4A8FE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" 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_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_27486B1DB6268BBD208520A688F40DB3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_GrossProfit_BC44FC507E25149B933920A688F54817" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" 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_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_72AE69D628D850DC343220A688F5FA55" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" 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_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_SellingAndMarketingExpense_8C862EB543EF1DF8C30120A688F55099" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_127910FB9FCBFD6E6F2E20A688F5EE8A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmortizationofIntangibleAssetsNonproduction" xlink:label="loc_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" 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_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_irbt_AmortizationofIntangibleAssetsNonproduction_C527209A3F2BBBF3008020A688F55529" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OperatingExpensesAbstract_FAFFC714C67724B1B0C120A688F51246" xlink:to="loc_us-gaap_OperatingExpenses_34F3E2241B046CF5568620A688F65C7A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_OperatingIncomeLoss_1EB350B45927F6F0003220A688F6FA62" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_NonoperatingIncomeExpense_41CEE482DCE393D46D0B20A688F66640" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_BF9A9C37826E463F093620A688F64BF6" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_BF9A9C37826E463F093620A688F64BF6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_14F118E750DD0589C76D20A688F6FEC8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_NetIncomeLoss_23153F0FAC6E10506AB620A688F6DC5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_B89173D71E8A0884E46520A688F7F527" 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_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:to="loc_us-gaap_EarningsPerShareBasic_B89173D71E8A0884E46520A688F7F527" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_A3C1DCBC820475753A3820A688F7A36D" 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_EarningsPerShareAbstract_F0A6C5260192D05B160D20A688F7C854" xlink:to="loc_us-gaap_EarningsPerShareDiluted_A3C1DCBC820475753A3820A688F7A36D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_FE468488B92C9C37409920A688F49756" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" 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_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_F0166E7DC516C11366F820A688F793C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" 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_WeightedAverageNumberOfSharesOutstandingAbstract_FF15A759B2906D13E8F220A688F7A133" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_344273192D111DD76D0920A688F8D61F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_C9199EEDE470B9C073F8352C2F7892CE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_688DE3577311F06B2FA1352C2F787E00" 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_StatementOfStockholdersEquityAbstract_C9199EEDE470B9C073F8352C2F7892CE" xlink:to="loc_us-gaap_StatementTable_688DE3577311F06B2FA1352C2F787E00" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_76FA0061615B135AE2C2352C2F79BAAE" 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_StatementTable_688DE3577311F06B2FA1352C2F787E00" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_76FA0061615B135AE2C2352C2F79BAAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" 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_StatementEquityComponentsAxis_76FA0061615B135AE2C2352C2F79BAAE" xlink:to="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" 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_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_CommonStockMember_E9A0CBABFDAE8EE409C3352C2F79E4EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" 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_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_0BA37225F3AFB0181C06352C2F79BBB3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_RetainedEarningsMember_0C7DD658C9AE064509A4352C2F7AAB91" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" 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_EquityComponentDomain_5DF885BD6FD0816CC778352C2F79AE90" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_422902BB5A248104093B352C2F7AE90B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_906CD9B9A7C7A2A561DA352C2F7A037F" 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_StatementTable_688DE3577311F06B2FA1352C2F787E00" xlink:to="loc_us-gaap_StatementLineItems_906CD9B9A7C7A2A561DA352C2F7A037F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" 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_906CD9B9A7C7A2A561DA352C2F7A037F" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" 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_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_CommonStockSharesIssued_30136F7BD996517B5E49352C2F7AAE54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockholdersEquity_B7981210B0CFC6EDE861352C2F7B13F5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_BE7EB8197917139118C4352C2F7B1588" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" 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_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_FD3ABEFEA5B88B827A0F352C2F7BE79B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued" xlink:label="loc_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" 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_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued_D55F9B4D67932CDEE1B0352C2F7B4FE0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueOther" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" 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_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueOther_2FD39B02A8A3AEC8369D352C2F7B2E3C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" 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_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures_10E489CCABE30377CF85352C2F7B1C9D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures_1CD756830FD296E1BDA4352C2F7C81EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation_89AA246E8B9A141AFAA4352C2F7C6816" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" 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_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_7F99B60D683B7BED45CA352C2F7CC37D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_7BA5AAE9F4CDB15FE623352C2F7C5A01" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount" xlink:label="loc_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount_3DAD4633FF7710705D1A352C2F7C3519" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" 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_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_532EB90DF2CAF38F37F7352C2F7C9E53" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation" xlink:label="loc_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation_283C9BE406523CB078BD352C2F7C7143" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent" xlink:label="loc_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" 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_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent_458F95DB89D5AC7AED7A352C2F7DBF22" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption" xlink:label="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption_F0DA235289FFC18F7A9E352C2F7D73EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:type="locator" />
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_A15EFCB2A8827639F379352C2F7D2652" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:type="locator" />
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_3EDE91E3C99CAB3F6105352C2F7D95BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" xlink:type="locator" />
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_NetIncomeLoss_02204F9DDDBC0EADC157352C2F7DDE42" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaap_CommonStockSharesIssued_0D37E6D4F8CC8C60CDB6352C2F7D1653" xlink:type="locator" />
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_CommonStockSharesIssued_0D37E6D4F8CC8C60CDB6352C2F7D1653" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaap_StockholdersEquity_68CA3ADA1DE07EA0AE32352C2F7D12B7" xlink:type="locator" />
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_98B502FB2A4FDB78D9EB352C2F7A3AA0" xlink:to="loc_us-gaap_StockholdersEquity_68CA3ADA1DE07EA0AE32352C2F7D12B7" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_8925754A119606F31DB53C4BEF0CF825" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" 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_8925754A119606F31DB53C4BEF0CF825" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" 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_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" 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_srt_RangeAxis_07A9547FDD22AC6B4CF43C4BEF0C29A3" xlink:to="loc_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" 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_srt_RangeMember_BFD070211D789ECDC6AA3C4BEF0DF86F" xlink:to="loc_srt_MaximumMember_F6644AF04BE0959C65F93C4BEF0DFC3E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" 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_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" 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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_E08D40908088B357F5683C4BEF0D0EA5" xlink:to="loc_us-gaap_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" 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_HedgingRelationshipDomain_0423684DD6B867930C8D3C4BEF0D582A" xlink:to="loc_us-gaap_CashFlowHedgingMember_BCAED94CA1B3CBD85A543C4BEF0E4CE7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" 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_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" 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_DerivativeInstrumentRiskAxis_7A57EAC719277DAE7CEA3C4BEF0E8649" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeOptionMember" xlink:label="loc_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" 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_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:to="loc_us-gaap_ForeignExchangeOptionMember_FC24C00248E5D8F9DCD63C4BEF0F9AB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeForwardMember" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" 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_DerivativeContractTypeDomain_4547E33C79004990C0763C4BEF0E12B3" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_926F6072B4310BB72D813C4BEF0FFE1C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" 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_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_HedgingDesignationAxis_93F164305B108EED68613C4BEF10E16A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" 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_93F164305B108EED68613C4BEF10E16A" xlink:to="loc_us-gaap_HedgingDesignationDomain_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NondesignatedMember" xlink:label="loc_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" 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_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:to="loc_us-gaap_NondesignatedMember_BFE0EFCA7F030884A64F3C4BEF10D187" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" 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_7C75F5DADCB9E67232CB3C4BEF100C27" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_0511967B36624B65342A3C4BEF108462" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" 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_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" 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_BalanceSheetLocationAxis_E42A8660B36F8E6C4B883C4BEF1112FB" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherCurrentAssetsMember" xlink:label="loc_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" 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_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_OtherCurrentAssetsMember_1A301BD30519B5C628B93C4BEF11C5E1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncurrentAssetsMember" xlink:label="loc_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" 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_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_OtherNoncurrentAssetsMember_238BCD685F00CF9A2F733C4BEF122A7F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccruedLiabilitiesMember" xlink:label="loc_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" 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_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_AccruedLiabilitiesMember_EC114E0FAEAA331E5F313C4BEF128A2E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="loc_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" 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_BalanceSheetLocationDomain_F7EA8B819901E7BA85603C4BEF11BDBF" xlink:to="loc_us-gaap_OtherNoncurrentLiabilitiesMember_980D242F996BA7B3127E3C4BEF12E950" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesFairValueLineItems" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" 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_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_4C080B7A21C429068D333C4BEF0CE697" xlink:to="loc_us-gaap_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeTermOfContract" xlink:label="loc_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" 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_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="loc_us-gaap_DerivativeTermOfContract_4ACA6FC856CF542F45823C4BEF806432" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeNotionalAmount" xlink:label="loc_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" 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_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="loc_us-gaap_DerivativeNotionalAmount_E85F1BB06AA50CBBC17E3C4BF22E3163" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeFairValueOfDerivativeNetAbstract" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" 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_DerivativesFairValueLineItems_211CD44BC1D4D1C9EE853C4BEF132595" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" 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_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:to="loc_us-gaap_DerivativeAssets_4B13ABDBB2DEB51074133C4BEF802BBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" 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_DerivativeFairValueOfDerivativeNetAbstract_6D180004E37B8A692AAB3C4BEF805CCB" xlink:to="loc_us-gaap_DerivativeLiabilities_6EA3BC2C9E17FC652E333C4BEF815357" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_360C7D5EAD8EC1FBD58E355064C7A19A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" 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_360C7D5EAD8EC1FBD58E355064C7A19A" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationAxis" xlink:label="loc_us-gaap_HedgingDesignationAxis_E5F017867598708D4605355064C707C3" 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_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_HedgingDesignationAxis_E5F017867598708D4605355064C707C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingDesignationDomain" xlink:label="loc_us-gaap_HedgingDesignationDomain_56E1CB493E79847A8D50355064C7D93B" 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_E5F017867598708D4605355064C707C3" xlink:to="loc_us-gaap_HedgingDesignationDomain_56E1CB493E79847A8D50355064C7D93B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DesignatedAsHedgingInstrumentMember" xlink:label="loc_us-gaap_DesignatedAsHedgingInstrumentMember_477D85DA03C56449A99B355064C8A90D" 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_56E1CB493E79847A8D50355064C7D93B" xlink:to="loc_us-gaap_DesignatedAsHedgingInstrumentMember_477D85DA03C56449A99B355064C8A90D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_BD5BDA1190472520EAF5355064C8DF0D" 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_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_srt_RangeAxis_BD5BDA1190472520EAF5355064C8DF0D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8" 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_srt_RangeAxis_BD5BDA1190472520EAF5355064C8DF0D" xlink:to="loc_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_E87C93262A7A8A9734E3355064C80CB5" 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_srt_RangeMember_B1A5892EAA2DD6A4A25B355064C89EE8" xlink:to="loc_srt_MaximumMember_E87C93262A7A8A9734E3355064C80CB5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentRiskAxis" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_0330211EB3A7D139531A355064C9898F" 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_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_0330211EB3A7D139531A355064C9898F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeContractTypeDomain" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002" 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_DerivativeInstrumentRiskAxis_0330211EB3A7D139531A355064C9898F" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ForeignExchangeForwardMember" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_39592CAB7A6E96CAC87D355064C90BB0" 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_DerivativeContractTypeDomain_BD7430B83856A61B545C355064C92002" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_39592CAB7A6E96CAC87D355064C90BB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_D064DD1BE61CA60C177D355064C92751" 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_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_D064DD1BE61CA60C177D355064C92751" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1" 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_IncomeStatementLocationAxis_D064DD1BE61CA60C177D355064C92751" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_A2B485373E24E07A4D1A355064C98EB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_2C4236177D215D6CF282355064CA42AF" 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_A2B485373E24E07A4D1A355064C98EB1" xlink:to="loc_us-gaap_SalesRevenueNetMember_2C4236177D215D6CF282355064CA42AF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_622D3CBF7276D5A778DB355064CA4543" 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_A2B485373E24E07A4D1A355064C98EB1" xlink:to="loc_us-gaap_CostOfSalesMember_622D3CBF7276D5A778DB355064CA4543" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpenseMember" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" 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_A2B485373E24E07A4D1A355064C98EB1" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpenseMember_B58FE0AE623022A0F3E7355064CA2728" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_06222D3AECBEC3D3FE40355064CAD9F3" 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_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_06222D3AECBEC3D3FE40355064CAD9F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_HedgingRelationshipDomain" xlink:label="loc_us-gaap_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E" 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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_06222D3AECBEC3D3FE40355064CAD9F3" xlink:to="loc_us-gaap_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashFlowHedgingMember" xlink:label="loc_us-gaap_CashFlowHedgingMember_57B03DCAA23BE1A9534D355064CB9271" 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_HedgingRelationshipDomain_71ADAD4D542E42AD2262355064CB456E" xlink:to="loc_us-gaap_CashFlowHedgingMember_57B03DCAA23BE1A9534D355064CB9271" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" 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_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_0DAD53531AAD853C6B97355064C7E44F" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_30D7D0504814EFD7F8F4355064CBD61B" 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_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_Revenues_30D7D0504814EFD7F8F4355064CBD61B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" 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_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_5AD268E736F34F995454355064CCF3F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeTermOfContract" xlink:label="loc_us-gaap_DerivativeTermOfContract_8BD4EB7E94760F59BA8D355064CC2ED2" 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_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeTermOfContract_8BD4EB7E94760F59BA8D355064CC2ED2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet" xlink:label="loc_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" 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_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet_D61ADF09F99796C80223355064CC1FB2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" 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_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax_B1DCC1F5ECCBF1953315355064CC0871" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" 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_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet_96ADD30E19FBA5D96136355064CC44F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" 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_DerivativeInstrumentsGainLossLineItems_3EF1786F22B12E5CB9C6355064CB4A13" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet_77E9FDF66D76B36F85F0355064CCAB2B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_1DB3DBF595F5138CC3821ECFD6175C6E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077" 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_1DB3DBF595F5138CC3821ECFD6175C6E" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_610FF571B794334287CF1ECFD6174077" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_1A1A7F854C4C7F0F366C1ECFD67CB928" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B" 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_1A1A7F854C4C7F0F366C1ECFD67CB928" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_8718DF61B72AF1D08B341ECFD67C8B9B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293" 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_1A1A7F854C4C7F0F366C1ECFD67CB928" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_7B5699C1B0955B512F811ECFD67D1293" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/DivestitureDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration" xlink:label="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257" 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_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED" xlink:to="loc_us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration_490028ED41C5665326081ECFD5292257" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal" xlink:label="loc_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6" 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_DiscontinuedOperationsAndDisposalGroupsAbstract_1A7327E3D319FD37CFB31ECFD529A2ED" xlink:to="loc_us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal_FE9FA69375B74F8B85931ECFD529F4C6" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/DivestitureNotes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract" xlink:label="loc_us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract_C7771F28E9695C2DAFB81ECFD64ACC6F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF" 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_DiscontinuedOperationsAndDisposalGroupsAbstract_C7771F28E9695C2DAFB81ECFD64ACC6F" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock_222BEC98B735BF33E0E21ECFD64A60AF" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/DocumentAndEntityInformation" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_DocumentAndEntityInformationAbstract" xlink:label="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:type="locator" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_Security12bTitle" xlink:label="loc_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_Security12bTitle_76614C113E5FBE4A637235E63F3A51DF" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_TradingSymbol" xlink:label="loc_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_TradingSymbol_1B0CB6DAECDCEF87821735E63F3A1F99" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_SecurityExchangeName" xlink:label="loc_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_SecurityExchangeName_1E2DD7ABDB2597D74AB135E63F3ACCD0" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityAddressStateOrProvince_05787383EB71FC3B5BB035E63F3AE125" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityIncorporationStateCountryCode_EAD89F73C64726FD4A5A35E63F3B78CF" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentTransitionReport" xlink:label="loc_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_DocumentTransitionReport_F37DFA916886A9A152D735E63F3BE840" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentAnnualReport" xlink:label="loc_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_DocumentAnnualReport_8732920ADCA8E42E395A35E63F3BDE9C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_E84DB9F65F72481A770F35E63F3BCB36" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityRegistrantName" xlink:label="loc_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityRegistrantName_82D30D941606F1E1672735E63F3C2C1B" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCentralIndexKey" xlink:label="loc_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityCentralIndexKey_FB5ADCD0B95EFEE6C75835E63F3C3F1C" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentType" xlink:label="loc_dei_DocumentType_07912E934753BC30988335E63F3CF907" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_DocumentType_07912E934753BC30988335E63F3CF907" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFileNumber" xlink:label="loc_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityFileNumber_F363D2C03F4731D4C17C35E63F3CEA95" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_DocumentPeriodEndDate_CAABCF500BA8E6040D5F35E63F3D7320" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_AmendmentFlag" xlink:label="loc_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_AmendmentFlag_618CE28A5B36DC24542E35E63F3D4377" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_DocumentFiscalYearFocus_99FD0B431B580341F15435E63F3E2C9D" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_DocumentFiscalPeriodFocus_A482AC9B9635619ED69F35E63F3E4A6A" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80" 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_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_CurrentFiscalYearEndDate_B9DDEEEC3442703A31D435E63F3E3D80" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253" xlink:type="locator" />
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityWellKnownSeasonedIssuer_A993EBE3A58E78D238D535E63F3E7253" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801" xlink:type="locator" />
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityVoluntaryFilers_C7FD850D64A44B9631C235E63F3E2801" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityFilerCategory" xlink:label="loc_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66" xlink:type="locator" />
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityFilerCategory_947D727B052B13DFF75135E63F3EAB66" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntitySmallBusiness" xlink:label="loc_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB" xlink:type="locator" />
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntitySmallBusiness_8DF67F391DE847464B6B35E63F3F62EB" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5" xlink:type="locator" />
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityEmergingGrowthCompany_7A0FF840C2B4B7DCE9BA35E63F3F13D5" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityShellCompany" xlink:label="loc_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884" xlink:type="locator" />
    <link:presentationArc order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityShellCompany_D5A525AE9D81EA0D1B5535E63F3F6884" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityPublicFloat" xlink:label="loc_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E" xlink:type="locator" />
    <link:presentationArc order="24" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityPublicFloat_90B6802DB0132274CED335E63F3FA66E" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C" xlink:type="locator" />
    <link:presentationArc order="25" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_FAC05D26C6A3B4F0F81C35E63F3F089C" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E" xlink:type="locator" />
    <link:presentationArc order="26" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityTaxIdentificationNumber_FAA9A05350779EF221BA35E63F3F2E2E" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6" xlink:type="locator" />
    <link:presentationArc order="27" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityAddressAddressLine1_B66AF2697CFD85B52E2D35E63F4054D6" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105" xlink:type="locator" />
    <link:presentationArc order="28" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityAddressCityOrTown_BCD4F49FB4ACAF1DE44635E63F40E105" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228" xlink:type="locator" />
    <link:presentationArc order="29" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityAddressPostalZipCode_28C6F45CB5016054035035E63F403228" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_CityAreaCode" xlink:label="loc_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68" xlink:type="locator" />
    <link:presentationArc order="30" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_CityAreaCode_81AF072893E046289F3B35E63F40DF68" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_LocalPhoneNumber" xlink:label="loc_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6" xlink:type="locator" />
    <link:presentationArc order="31" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_LocalPhoneNumber_C0A6205FE044D661018D35E63F406CD6" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E" xlink:type="locator" />
    <link:presentationArc order="32" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityCurrentReportingStatus_81C16014328608E7F3DB35E63F402E6E" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2" xlink:type="locator" />
    <link:presentationArc order="33" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_DocumentAndEntityInformationAbstract_D76610B39BCE6E4CD11635E63F390177" xlink:to="loc_dei_EntityInteractiveDataCurrent_F08351ACAFECE51716D835E63F41D9C2" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/EmployeeBenefitsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanCostRecognized" xlink:label="loc_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C" 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_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:to="loc_us-gaap_DefinedContributionPlanCostRecognized_A650546A0AACE173DCDE1ECFD679DF1C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E" 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_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch_78952A60E33086DF633F1ECFD679BB1E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent" xlink:label="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3" 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_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:to="loc_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent_6DB77A8A3CA272C328141ECFD67914B3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390" 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_CompensationAndRetirementDisclosureAbstract_8F3C9743E767FB4CDF121ECFD6782408" xlink:to="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_DB77B547497915959AF21ECFD679E390" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/EmployeeBenefitsNotes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_EB8C320C1BADEEDA0BB61ECFD647BE3B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock" xlink:label="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A" 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_CompensationAndRetirementDisclosureAbstract_EB8C320C1BADEEDA0BB61ECFD647BE3B" xlink:to="loc_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock_24A8E008CA72B48EC5B11ECFD647831A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_EFA8EEB6ED21F29B8F1D1ECFD486E7D0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58" 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_EFA8EEB6ED21F29B8F1D1ECFD486E7D0" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_B4264E4CBF094BC2AE831ECFD486EB58" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_E87C5D43DF86249BB2901ECFD70FB1A4" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtTableTextBlock" xlink:label="loc_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077" 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_E87C5D43DF86249BB2901ECFD70FB1A4" xlink:to="loc_us-gaap_ConvertibleDebtTableTextBlock_A6EC081EAF24A98EBF201ECFD710D077" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_700FCD346A7CFBECE5693C53B1043A05" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" 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_700FCD346A7CFBECE5693C53B1043A05" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByMeasurementFrequencyAxis" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementFrequencyDomain" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" 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_0A43E5A35A8DE29AF3C33C53B10A0735" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_D41E4DC52149A53C7B473C53B10AB823" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsRecurringMember" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" 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_D41E4DC52149A53C7B473C53B10AB823" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_E5F4EB0ADE14529A24513C53B10BA317" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" 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_D83912B8B1BD3E5F53EE3C53B10B0F93" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel1Member" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" 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_1542631F3C67BDA5042E3C53B10BBC1C" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_E8C76C8F9A1325DD5B6D3C53B10BE80E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel2Member" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" 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_FairValueMeasurementsFairValueHierarchyDomain_1542631F3C67BDA5042E3C53B10BBC1C" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_D2346FD0810C8995CE493C53B10C0142" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueInputsLevel3Member" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" 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_1542631F3C67BDA5042E3C53B10BBC1C" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_39A69DF5414379C52FD93C53B10C24DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAxis" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" 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_CashAndCashEquivalentsAxis_17F8A6698371CFB575103C53B10C7B09" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MoneyMarketFundsMember" xlink:label="loc_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" 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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_913A1047626606DF69993C53B10CBC5D" xlink:to="loc_us-gaap_MoneyMarketFundsMember_C76D4B0887212F9749233C53B10DFDE2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_C9F91CBECE54BDDDCD983C53B10A9834" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsFairValueDisclosureAbstract" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" 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_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_37120503257A76B4C5BA3C53B10DF3B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecurities" xlink:label="loc_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" 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_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_AvailableForSaleSecurities_E618299125FAE8D5E29D3C53B10E4B95" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NotesReceivableFairValueDisclosure" xlink:label="loc_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" 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_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_NotesReceivableFairValueDisclosure_42D0D66F3B065E5A37FC3C5B86647FAF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" 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_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_39825B85622229EF34F13C53B10E41F5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeAssets" xlink:label="loc_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" 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_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_DerivativeAssets_8264B272E60C3FD57B853C53B10ECA2C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AssetsFairValueDisclosure" xlink:label="loc_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" 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_AssetsFairValueDisclosureAbstract_8963B6341554345530CB3C53B10D0DE6" xlink:to="loc_us-gaap_AssetsFairValueDisclosure_043B0AC12328589E86AA3C53B10E4477" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_328980634A53345A3AC03C53B10DE9F9" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativeLiabilities" xlink:label="loc_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" 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_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:to="loc_us-gaap_DerivativeLiabilities_2DE2CB1125216ADDDA363C53B10F7C6A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LiabilitiesFairValueDisclosure" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_A05B7BC4F44A67F7C8E23C53B10F3781" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosure_0249E493D3B8E49455A63C53B1146E12" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/FairValueMeasurementsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_9A2DB4F40D54B93A81A41ECFD689203D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A" 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_9A2DB4F40D54B93A81A41ECFD689203D" xlink:to="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_0A0204FCCBC0588C54901ECFD68A996A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_5831176F9A6D80EBA78F1ECFD446C896" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB" 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_GoodwillAndIntangibleAssetsDisclosureAbstract_5831176F9A6D80EBA78F1ECFD446C896" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_892117357BFFC5B7110A1ECFD4479FFB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_3BAC87D4921A9C99784F1ECFD7323EF4" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" 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_GoodwillAndIntangibleAssetsDisclosureAbstract_3BAC87D4921A9C99784F1ECFD7323EF4" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_F191D0B268AE6210A78C1ECFD732B50B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_5CC717924845FE24A68C1ECFD7334AE4" 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_F191D0B268AE6210A78C1ECFD732B50B" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_5CC717924845FE24A68C1ECFD7334AE4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45" 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_IncomeStatementLocationAxis_5CC717924845FE24A68C1ECFD7334AE4" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_8CED7211FC9D4D7BEABE1ECFD7332B71" 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_IncomeStatementLocationDomain_C80B727F5D19FBFB91501ECFD733DA45" xlink:to="loc_us-gaap_CostOfSalesMember_8CED7211FC9D4D7BEABE1ECFD7332B71" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingExpenseMember" xlink:label="loc_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" 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_C80B727F5D19FBFB91501ECFD733DA45" xlink:to="loc_us-gaap_OperatingExpenseMember_67FA079FD632701EA4D51ECFD733811A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" 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_F191D0B268AE6210A78C1ECFD732B50B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" 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_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_8F4B1AE32F93C214994C1ECFD73475E3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" 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_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_1573EC71F007C499B6CD1ECFD7349B27" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" 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_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_F7F3170E674188531A051ECFD734E93E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" 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_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_E0F53EDEEF7D4F8147111ECFD735EAB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" 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_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0C18A6022F15085E967A1ECFD735C3AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" 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_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_0F2A240856562A580DC91ECFD7353D57" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Finitelivedintangibleassetsfutureamortizationtotal" xlink:label="loc_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" 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_FiniteLivedIntangibleAssetsLineItems_28D0390F2128E36AB4621ECFD73459B7" xlink:to="loc_irbt_Finitelivedintangibleassetsfutureamortizationtotal_FCF3646F2928A44F98E61ECFD735398B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F" 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_GoodwillAndIntangibleAssetsDisclosureAbstract_3BAC87D4921A9C99784F1ECFD7323EF4" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_20D0BF2F2267B2E6DDDD1ECFD735E24F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_51CA5D9F082C3A7682E93AC6FD075E3B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAcquiredDuringPeriod" xlink:label="loc_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105" 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_51CA5D9F082C3A7682E93AC6FD075E3B" xlink:to="loc_us-gaap_GoodwillAcquiredDuringPeriod_008BD1D59A6CB6AB1BE33AC7D4DD7105" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillRollForward" xlink:label="loc_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" 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_51CA5D9F082C3A7682E93AC6FD075E3B" xlink:to="loc_us-gaap_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_E493B5DC3E74CD64B5783AC6FD0831DE" 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_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:to="loc_us-gaap_Goodwill_E493B5DC3E74CD64B5783AC6FD0831DE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillPurchaseAccountingAdjustments" xlink:label="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0" 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_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:to="loc_us-gaap_GoodwillPurchaseAccountingAdjustments_27123E1CF709775C058E3AC6FD0938B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059" 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_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_54730B52EA2C4EAF31A23AC6FD090059" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaap_Goodwill_C5A6B1C02E3C5BC40F193AC6FD09AF0E" 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_GoodwillRollForward_1C353342CB861F2B8F823AC6FD08C25A" xlink:to="loc_us-gaap_Goodwill_C5A6B1C02E3C5BC40F193AC6FD09AF0E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_E04BB625138FC21FC59F1ECFD672A74D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" 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_E04BB625138FC21FC59F1ECFD672A74D" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_3C0A7644C22B965468391ECFD67201EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" 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_3C0A7644C22B965468391ECFD67201EE" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" 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_18EB943B0F10376DB9FF1ECFD6720C7B" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PatentedTechnologyMember" xlink:label="loc_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_PatentedTechnologyMember_E9E5957AF5856D05A2441ECFD673ED01" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TradeNamesMember" xlink:label="loc_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_TradeNamesMember_446CBF839FF11F4BBB751ECFD67368B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" 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_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_CustomerRelationshipsMember_44E286B891729EA69F331ECFD674289B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DistributionRightsMember" xlink:label="loc_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" 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_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_DistributionRightsMember_46C6B86905F9204BEDF61ECFD6749E31" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NoncompeteAgreementsMember" xlink:label="loc_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" 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_FiniteLivedIntangibleAssetsMajorClassNameDomain_4DE60EA76D5C82ACA19C1ECFD673FD54" xlink:to="loc_us-gaap_NoncompeteAgreementsMember_D66C02EF55B5A2A0C7801ECFD6744244" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" 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_3C0A7644C22B965468391ECFD67201EE" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_8B126F503BB541EE99DE1ECFD674003C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" 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_8B126F503BB541EE99DE1ECFD674003C" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" 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_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_471DE66D29E64DD2A1E01ECFD675C606" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" 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_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_C06770DA2FA16BD9E4891ECFD675F90A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" 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_FiniteLivedIntangibleAssetsNetAbstract_F840DF5F8DA1A5A89A501ECFD674379F" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_3C889194386E7B752F191ECFD675A0C3" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_51A0CF76A7FBA290AD0A1ECFD66CCFA2" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC" 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_51A0CF76A7FBA290AD0A1ECFD66CCFA2" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_9CA328C9CF41188D60831ECFD66DE4CC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384" 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_GoodwillAndIntangibleAssetsDisclosureAbstract_51A0CF76A7FBA290AD0A1ECFD66CCFA2" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_6D0D42672E165A956ECA1ECFD66D6384" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_51A0CF76A7FBA290AD0A1ECFD66CCFA2" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_70FA1DF40A8C27160C571ECFD66D0162" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_5C58837569F98468D6101ECFD6397C32" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E" 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_IncomeTaxDisclosureAbstract_5C58837569F98468D6101ECFD6397C32" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_BEAEB7A62B44AB22EB761ECFD639020E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_A6ED889F435B755A292B1ECFD66504F5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" 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_IncomeTaxDisclosureAbstract_A6ED889F435B755A292B1ECFD66504F5" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" 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_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentFederalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598" 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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:to="loc_us-gaap_CurrentFederalTaxExpenseBenefit_824F20F2D559FC62A39A1ECFD6662598" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentStateAndLocalTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02" 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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:to="loc_us-gaap_CurrentStateAndLocalTaxExpenseBenefit_C144CCCCDBA9699D6AF31ECFD667CA02" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentForeignTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:to="loc_us-gaap_CurrentForeignTaxExpenseBenefit_C98912AF43F776C8F56C1ECFD6673F9D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5" 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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract_D74E44E3D3719641B5331ECFD6661B43" xlink:to="loc_us-gaap_CurrentIncomeTaxExpenseBenefit_BEF6E60E7C9C2F91A4251ECFD6681EF5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" 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_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredFederalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A" 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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:to="loc_us-gaap_DeferredFederalIncomeTaxExpenseBenefit_FFF3AADDB3FC0DEB43C71ECFD668CC5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9" 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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:to="loc_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit_1AE499B6A48BB6CB294B1ECFD6688BE9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredForeignIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4" 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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:to="loc_us-gaap_DeferredForeignIncomeTaxExpenseBenefit_5727FA296B3DBF290BCD1ECFD66925C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B" 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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract_1FD58954EF30098DD1F81ECFD668C8AD" xlink:to="loc_us-gaap_DeferredIncomeTaxExpenseBenefit_A0A2316FAD92FD6471321ECFD669D04B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1" 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_IncomeTaxExpenseBenefitContinuingOperationsAbstract_FA9C2DCC68A427F07F851ECFD6655CC6" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_2ED1188F3C6A272037961ECFD6694EE1" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_483A4DF20CDDD707D9FA34AF900B0A78" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" 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_IncomeTaxDisclosureAbstract_483A4DF20CDDD707D9FA34AF900B0A78" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate" xlink:label="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate_6EEEDCC41C752939774C34AF900C3F68" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount_BCBEA915B0FCDBBE9B3F34AF900C9F4E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_78C93D5B1EB7E0606C0434AF900C5A63" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxCredits" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxCredits_EA79676263375A1BCCA734AF900CA33C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities" xlink:label="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities_F030F7AB572F8ADCC43D34AF900DADC4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationTaxSettlements" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_12D45BB7485E1F213E0E34AF900D8933" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount_335F76457D4215D9DD1534AF900DD035" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount_620F2F8602DA0A407A3434AF900DD4D0" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction_145498259F3DAE53FA2234AF900D5F0A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring_C52CD424BFA17825D56734AF900D462F" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation_53A2E8AAD1AF73D2784634AF900E54D0" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings" xlink:label="loc_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings_D149D0615F0C2321A84F34AF900EC209" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_B91D0946878077EDC9A934AF900C29C8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_0DFE014947DEF9F3152434AF900EB085" xlink:type="locator" />
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_0DFE014947DEF9F3152434AF900EB085" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64" 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_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_6F1D814C7F480589B28E34AF900EFA64" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxReconciliationNondeductibleExpense" xlink:label="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract_930AC452E6CAD8F9C56B34AF900B1066" xlink:to="loc_us-gaap_IncomeTaxReconciliationNondeductibleExpense_BFD906103E49429C1DB434AF900EF951" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_C791D79C5B17422C4BD81ECFD61E04EA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A" 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_C791D79C5B17422C4BD81ECFD61E04EA" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic_88F1F3ABFA98B40D83251ECFD61EBB4A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B" 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_C791D79C5B17422C4BD81ECFD61E04EA" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign_834B7DBF8659B2C677841ECFD61E373B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6" 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_IncomeTaxDisclosureAbstract_C791D79C5B17422C4BD81ECFD61E04EA" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_97DF88D0FFC3064B87A81ECFD61E2AD6" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_40E787AF82D9E10CCB343AF2306EA86E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardTable" xlink:label="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" 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_40E787AF82D9E10CCB343AF2306EA86E" xlink:to="loc_us-gaap_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_EC261F38CB8A795EE5AB3AF2306FCF95" 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_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_EC261F38CB8A795EE5AB3AF2306FCF95" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_F02985CF1510B45E4DF43AF2306F74ED" 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_EC261F38CB8A795EE5AB3AF2306FCF95" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_F02985CF1510B45E4DF43AF2306F74ED" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_EvolutionRoboticsIncErMember" xlink:label="loc_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" 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_F02985CF1510B45E4DF43AF2306F74ED" xlink:to="loc_irbt_EvolutionRoboticsIncErMember_6797BF3C835196D9641F3AF2306F6016" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityAxis" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" 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_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxAuthorityDomain" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" 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_28650C6B3046E98F6BDC3AF2306FF2DB" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_74E5B8D853CC1628354C3AF2306F2BDE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticCountryMember" xlink:label="loc_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" 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_74E5B8D853CC1628354C3AF2306F2BDE" xlink:to="loc_us-gaap_DomesticCountryMember_81C33113020AFDC0905D3AF23070A8DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StateAndLocalJurisdictionMember" xlink:label="loc_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" 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_74E5B8D853CC1628354C3AF2306F2BDE" xlink:to="loc_us-gaap_StateAndLocalJurisdictionMember_45235D22F85392557C323AF23070E4BD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAxis" xlink:label="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" 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_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="loc_us-gaap_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardNameDomain" xlink:label="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" 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_TaxCreditCarryforwardAxis_222AFBEDC74863CFE2D43AF2307166D0" xlink:to="loc_us-gaap_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchMember" xlink:label="loc_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" 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_TaxCreditCarryforwardNameDomain_C0D33334B208A74BD0233AF2307135EF" xlink:to="loc_us-gaap_ResearchMember_B5359C62BE228359548A3AF2307106EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardLineItems" xlink:label="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" 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_TaxCreditCarryforwardTable_CBE8AECE23F97030A4473AF2306E024A" xlink:to="loc_us-gaap_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_C8ED60C34F877FE9580E3AF23072B978" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_C8ED60C34F877FE9580E3AF23072B978" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_B91A60ED9C755BE2BD0C3AF2307274CC" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_B91A60ED9C755BE2BD0C3AF2307274CC" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_506D3360139B9C3BBC1B3AF23072F619" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_506D3360139B9C3BBC1B3AF23072F619" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLossCarryforwards" xlink:label="loc_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_OperatingLossCarryforwards_7EDBD5EAA071447C59513AF230726329" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCreditCarryforwardAmount" xlink:label="loc_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_TaxCreditCarryforwardAmount_3849297B993B69B91A663AF230732428" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_7B5865DEE37641B071803AF230736AC6" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_7B5865DEE37641B071803AF230736AC6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued_4171A8AD11740805B7893AF230738E5F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" 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_TaxCreditCarryforwardLineItems_DAC483FCA95538A6F1D53AF23072497D" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate_FFA759965B4FE5C8FCC73AF2307300AA" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_B56D10759A45E0CB3F7635CF0E6E0676" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract" xlink:label="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" 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_IncomeTaxDisclosureAbstract_B56D10759A45E0CB3F7635CF0E6E0676" xlink:to="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances_B5BE2C9E7DA6C63573FD35CF0E6E3A0B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther_D3B87EC8B3A75A4F9FF035CF0E6EA61B" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities" xlink:label="loc_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities_386E19124D6EC84FF76035CF0E6FA381" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxCreditCarryforwards" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxCreditCarryforwards_364DDEA5BDDDEDADB50A35CF0E6FB7C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment" xlink:label="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment_00B112C31C121CD8C32235CF0E6F8CE1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost" xlink:label="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost_1796E6D748709143456735CF0E6F619E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsOther" xlink:label="loc_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsOther_30DF1D27B1046625CE5F35CF0E6FF738" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsGross" xlink:label="loc_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760" xlink:type="locator" />
    <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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsGross_B8DA629D13B64316FC8335CF0E6F1760" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F" 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_F24401FA62512339741335CF0E703F4F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsNet" xlink:label="loc_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract_72E2AE628257DBB88C6C35CF0E6E2960" xlink:to="loc_us-gaap_DeferredTaxAssetsNet_2BEC569C7458027F3B9335CF0E702ACA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesAbstract" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" 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_IncomeTaxDisclosureAbstract_B56D10759A45E0CB3F7635CF0E6E0676" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40" 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_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets_2C37EA80A6CE7C31E6E035CF0E708A40" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesLeasingArrangements" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508" 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_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesLeasingArrangements_3449058AFE2BD4BCE97935CF0E709508" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxLiabilitiesOther" xlink:label="loc_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980" 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_DeferredTaxLiabilitiesAbstract_908E54C536967A6E649035CF0E700664" xlink:to="loc_us-gaap_DeferredTaxLiabilitiesOther_7A63A849EF4693B54B1E35CF0E710980" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilities" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862" 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_IncomeTaxDisclosureAbstract_B56D10759A45E0CB3F7635CF0E6E0676" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilities_9B20C3F38EFA97F84D1B35CF0E719862" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsLiabilitiesNet" xlink:label="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E" 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_IncomeTaxDisclosureAbstract_B56D10759A45E0CB3F7635CF0E6E0676" xlink:to="loc_us-gaap_DeferredTaxAssetsLiabilitiesNet_343E691309BF271AF83135CF0E71179E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_ADA4A4E4B3BAD89B46C71ECFD4D31058" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB" 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_ADA4A4E4B3BAD89B46C71ECFD4D31058" xlink:to="loc_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock_2FA0EA27EAFBAEE8D1651ECFD4D36BDB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062" 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_IncomeTaxDisclosureAbstract_ADA4A4E4B3BAD89B46C71ECFD4D31058" xlink:to="loc_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock_4AB72E3AA4A2BE3A2E761ECFD4D4C062" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ADA4A4E4B3BAD89B46C71ECFD4D31058" xlink:to="loc_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock_7145608631C6827D97DA1ECFD4D4AF26" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C" 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_IncomeTaxDisclosureAbstract_ADA4A4E4B3BAD89B46C71ECFD4D31058" xlink:to="loc_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock_B21029ADC2D488D2DD951ECFD4D49E7C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_ADA4A4E4B3BAD89B46C71ECFD4D31058" xlink:to="loc_us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock_3AD569180730291CCCF01ECFD4D47305" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_405452EE2E20D620469F35F53F3E321E" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward" xlink:label="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" 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_IncomeTaxDisclosureAbstract_405452EE2E20D620469F35F53F3E321E" xlink:to="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC" 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_7995C58A94E461B921F635F53F3EB2DC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259" 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions_262D533584108631F46635F53F3E4259" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C" 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition_06843A2FCA5ADD11A73435F53F3E2C6C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3" 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions_488ACE227A8E47551FA035F53F3F4BD3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0" 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions_63F16AA5E37245744D3E35F53F3F57C0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22" 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities_DABF48BBFB85ECCD336335F53F3F5D22" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations" xlink:label="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations_768EDCF620F885D5999F35F53F3F1272" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UnrecognizedTaxBenefits" xlink:label="loc_us-gaap_UnrecognizedTaxBenefits_990A0AA03B695003FA6835F53F3F5891" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward_70C90555DD4E41AE994435F53F3E8B4F" xlink:to="loc_us-gaap_UnrecognizedTaxBenefits_990A0AA03B695003FA6835F53F3F5891" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_C5357B267C15033F26301ECFD3EFBEA8" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF" 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_SegmentReportingAbstract_C5357B267C15033F26301ECFD3EFBEA8" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_BE1C0E144059932AB25A1ECFD3EFCDCF" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_188CC56EE056A5E8777C35F53F250B48" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable" xlink:label="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" 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_SegmentReportingAbstract_188CC56EE056A5E8777C35F53F250B48" xlink:to="loc_us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_A5E28C3E82521B6EFBD735F53F268433" 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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_srt_StatementGeographicalAxis_A5E28C3E82521B6EFBD735F53F268433" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" 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_srt_StatementGeographicalAxis_A5E28C3E82521B6EFBD735F53F268433" xlink:to="loc_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NonUsMember" xlink:label="loc_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" 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_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:to="loc_us-gaap_NonUsMember_B1D7FACD1C3818008FA735F53F260EBE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DomesticDestinationMember" xlink:label="loc_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" 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_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:to="loc_us-gaap_DomesticDestinationMember_42266C344884AD814EAF35F53F263413" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicDistributionForeignMember" xlink:label="loc_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" 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_srt_SegmentGeographicalDomain_38167D6E2824585E573635F53F26D698" xlink:to="loc_us-gaap_GeographicDistributionForeignMember_D61C39D2473F4FC2D19B35F53F274EC2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_BDC9A29F5DE46B433C3635F53F276D6F" 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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_BDC9A29F5DE46B433C3635F53F276D6F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" 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_ConcentrationRiskByTypeAxis_BDC9A29F5DE46B433C3635F53F276D6F" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="loc_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" 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_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" xlink:to="loc_us-gaap_GeographicConcentrationRiskMember_4FF3E668408C9BDF8F1A35F53F277B4A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_834CDA7A8E020552152F35F53F288190" 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_ConcentrationRiskTypeDomain_CFAA4B19D402DD336FAC35F53F279E7F" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_834CDA7A8E020552152F35F53F288190" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7DC58874456939D41F2035F53F2816C4" 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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7DC58874456939D41F2035F53F2816C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" 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_ConcentrationRiskByBenchmarkAxis_7DC58874456939D41F2035F53F2816C4" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_890CF7B4839FC82F947E35F53F28B115" 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_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" xlink:to="loc_us-gaap_SalesRevenueNetMember_890CF7B4839FC82F947E35F53F28B115" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ConsumerRobotRevenueMember" xlink:label="loc_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" 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_ConcentrationRiskBenchmarkDomain_64CDB38FF5E0F02B645435F53F28C938" xlink:to="loc_irbt_ConsumerRobotRevenueMember_6AA22091FD0BCB85BEB435F53F28649C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_F7A9065369584C19FBAA35F53F290982" 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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_srt_MajorCustomersAxis_F7A9065369584C19FBAA35F53F290982" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" 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_srt_MajorCustomersAxis_F7A9065369584C19FBAA35F53F290982" xlink:to="loc_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmazonMember" xlink:label="loc_irbt_AmazonMember_B650D85AECAC5F3BB84135F53F29228A" 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_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_AmazonMember_B650D85AECAC5F3BB84135F53F29228A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_FifteenCustomersMember" xlink:label="loc_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" 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_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_FifteenCustomersMember_6FE675211A7A6252D44435F53F2929ED" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationSODCMember" xlink:label="loc_irbt_SalesOnDemandCorporationSODCMember_7CC4F6BA8DA1512B352635F53F29FF7D" 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_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_SalesOnDemandCorporationSODCMember_7CC4F6BA8DA1512B352635F53F29FF7D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisSASMember" xlink:label="loc_irbt_RobopolisSASMember_884219D303EC1AC5BC5A35F53F2AE18E" 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_srt_NameOfMajorCustomerDomain_B6AE9298A7A035258DD235F53F2939E6" xlink:to="loc_irbt_RobopolisSASMember_884219D303EC1AC5BC5A35F53F2AE18E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems" xlink:label="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" 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_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable_D422B03494075BD9E67935F53F257671" xlink:to="loc_us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_A323D2CCC0F3265986A935F53F2AA7F0" 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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_dei_DocumentPeriodEndDate_A323D2CCC0F3265986A935F53F2AA7F0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="loc_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" 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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_us-gaap_NumberOfOperatingSegments_04F87526DCE07F304F3935F53F2A20B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_44B4957BA32C089E63CB35F53F2A0347" 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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_44B4957BA32C089E63CB35F53F2A0347" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_B66F3A281DAC1603D94935F53F2A1E89" 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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems_3590E05009CF5971534D35F53F2A97ED" xlink:to="loc_us-gaap_Revenues_B66F3A281DAC1603D94935F53F2A1E89" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaap_SegmentReportingAbstract_33DD1C089BA39A0E46F630F3B11428AB" xlink:type="locator" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyTable" xlink:label="loc_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" 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_SegmentReportingAbstract_33DD1C089BA39A0E46F630F3B11428AB" xlink:to="loc_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" 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_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:to="loc_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" 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_srt_StatementGeographicalAxis_9EA7CD399757E1D201753119C790FCAE" xlink:to="loc_srt_SegmentGeographicalDomain_48A46A68E424E6E15E353119C79B944B" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyLineItems" xlink:label="loc_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" 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_irbt_ScheduleofrevenuebygeographyTable_7EB79056F37934836DC930F3B11497AC" xlink:to="loc_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofrevenuebygeographyTableTextBlock" xlink:label="loc_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" 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_irbt_ScheduleofrevenuebygeographyLineItems_45CD1C2EC4A723B0F6B930F3B114A8E4" xlink:to="loc_irbt_ScheduleofrevenuebygeographyTableTextBlock_66814A5E3C1FF99B7B0930F3B11451DB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/Inventory" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_A2C6C3E216B24E0F958C1ECFD6BBEC30" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD" 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_InventoryDisclosureAbstract_A2C6C3E216B24E0F958C1ECFD6BBEC30" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_E348F52BB6DD86B8F1E31ECFD6BBF4AD" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/InventoryDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_B9FF83B356731B68F3AE1ECFD48E13FB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNetAbstract" xlink:label="loc_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" 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_InventoryDisclosureAbstract_B9FF83B356731B68F3AE1ECFD48E13FB" xlink:to="loc_us-gaap_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC" 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_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_0B213EBE60573F2D0B241ECFD48E75EC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB" 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_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_BBBAC4825E347BEC00531ECFD48F52AB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaap_InventoryNet_7F8A655233DFE0BD454E1ECFD48F395F" 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_InventoryNetAbstract_A8A959F276B9998B5B071ECFD48E79B1" xlink:to="loc_us-gaap_InventoryNet_7F8A655233DFE0BD454E1ECFD48F395F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/InventoryTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_08CC3A5786E6394028AC1ECFD6A305CA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9" 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_InventoryDisclosureAbstract_08CC3A5786E6394028AC1ECFD6A305CA" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_41F23DB5E929FAA49D161ECFD6A344E9" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/LeasesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasePayments" xlink:label="loc_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E" 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_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:to="loc_us-gaap_OperatingLeasePayments_12BD98CEE8BE069FA32A3F66F9E8842E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC" 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_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_C6287A3EA4C38F2AA36D3F65CC9F98FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE" 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_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_73F38786ADC20AECE4553F65CC9FADEE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseCost" xlink:label="loc_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D" 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_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:to="loc_us-gaap_OperatingLeaseCost_9B1489529E72E8309EEE3F65CC9F295D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_VariableLeaseCost" xlink:label="loc_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E" 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_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:to="loc_us-gaap_VariableLeaseCost_2DF1E557469B2FC728C73F65CCA0BD6E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeasesRentExpenseNet" xlink:label="loc_us-gaap_OperatingLeasesRentExpenseNet_F3BA748533230E0A7A0C3F65CCA08C1A" 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_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:to="loc_us-gaap_OperatingLeasesRentExpenseNet_F3BA748533230E0A7A0C3F65CCA08C1A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA" 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_LeasesAbstract_98D19DDCB5B4DC37D06D3F65CC9EE451" xlink:to="loc_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_E0AEBA99556DA48871753F671A01CABA" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_99876BB5DABD8A22DC233C7CD84D785C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_57B7AB4A58DCFC26DCBA3C7CD84DBFE3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_DDA7CA5BB764AF5DD1ED3C7CD84D5CAF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_46FE480232799BE861793C7CD84DEF28" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_CF1AB38E9D71DB75254E3C7CD84D5778" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_105A60FC3700D6F112B63C7CD84E241C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7" xlink:type="locator" />
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_26F11B6910136D11F42D3C7CD84E65C7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_A56DD3FA458FB7DC8B953C7CD84EE587" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_OperatingLeaseLiability_DDBCAF20EDC9191AF83B3C7CD84E4792" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE" 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_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_AC9294CBE3E62E3415423C7CD84ED9BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_050DED8ABD45F461AF843C7CD84D0A67" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_A2337816317BCCC441F53C7CD84E46CD" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/LeasesNotes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_8357D6EB96AADDF7DAA435506556E184" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45" 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_LeasesAbstract_8357D6EB96AADDF7DAA435506556E184" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_A6EFC67BB160E60567D1355065575D45" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/LeasesPolicies" xlink:type="extended" />
  <link:presentationLink xlink:role="http://www.irobot.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_OperatingLeaseCostAbstract" xlink:label="loc_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseCostTableTextBlock" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C" 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_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_32F1727C10A88ECF48513F65CFF72B6C" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock" xlink:label="loc_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" 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_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:to="loc_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock_6211AC330D5AEF18BAEA3F65CFF7116A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2" 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_irbt_OperatingLeaseCostAbstract_82E6881E036525FE669C3F65CFF7E3C3" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_822CFABE0564C96972503F65CFF8B3C2" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaap_LeasesAbstract_20A558DC11296D98957E356CD25CA74F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_6E1C26F94FF9558080F5356CD265FFBB" 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_LeasesAbstract_20A558DC11296D98957E356CD25CA74F" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_6E1C26F94FF9558080F5356CD265FFBB" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/NatureOfBusiness" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_C4BBC73BDBBA85ECB97F1ECFD71AE7BC" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NatureOfOperations" xlink:label="loc_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22" 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_C4BBC73BDBBA85ECB97F1ECFD71AE7BC" xlink:to="loc_us-gaap_NatureOfOperations_3BA464436F3D6A9948031ECFD71AFB22" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/NetIncomePerShareDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_8681B97F8660C7105EF61B45A329467C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasicAndDilutedAbstract" xlink:label="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" 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_AccountingPoliciesAbstract_8681B97F8660C7105EF61B45A329467C" xlink:to="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_982D5683CCB5A9DC831D1B45A32945CF" 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_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:to="loc_us-gaap_NetIncomeLoss_982D5683CCB5A9DC831D1B45A32945CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176" 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_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_C0E1A0449FEDD5D1F13B1B45A3291176" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_9EACE04BF152275498C71B45A32A0BDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E" 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_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_2891D6211B0B4B2A6DF61B45A32A877E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B" 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_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:to="loc_us-gaap_EarningsPerShareBasic_0519099778D01BBB72821B45A32A6E6B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257" 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_EarningsPerShareBasicAndDilutedAbstract_DD5D07F7A9F546BA9C5D1B45A329EBFD" xlink:to="loc_us-gaap_EarningsPerShareDiluted_9891026CF51182ABC6F81B45A32A8257" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipment" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_8DFA792FF2C2CDC7EBD81ECFD6EDA779" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4" 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_PropertyPlantAndEquipmentAbstract_8DFA792FF2C2CDC7EBD81ECFD6EDA779" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_2D0A6DB260BEB21CB3181ECFD6EEF4F4" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipment1Details" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_964F503A9DA83608971334AF9111862D" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" 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_PropertyPlantAndEquipmentAbstract_964F503A9DA83608971334AF9111862D" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_07200B368DD1049F970E34AF9111A87D" 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_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_07200B368DD1049F970E34AF9111A87D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" 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_PropertyPlantAndEquipmentByTypeAxis_07200B368DD1049F970E34AF9111A87D" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaap_ComputerEquipmentMember_2475431FBD0EC14FA9B334AF9111817C" 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_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_ComputerEquipmentMember_2475431FBD0EC14FA9B334AF9111817C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_79B59259D571AA75A4FF34AF9112A473" 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_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_79B59259D571AA75A4FF34AF9112A473" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_74AF2CF07CEC90745E5234AF9112FC8B" 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_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_74AF2CF07CEC90745E5234AF9112FC8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ToolsDiesAndMoldsMember" xlink:label="loc_us-gaap_ToolsDiesAndMoldsMember_4028C8B8B17DB2A6CE9A34AF91123271" 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_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_ToolsDiesAndMoldsMember_4028C8B8B17DB2A6CE9A34AF91123271" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_71BC4BD5A359731670F334AF911234E5" 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_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_71BC4BD5A359731670F334AF911234E5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_A5744923ADEE5ABA4BA934AF9112B2EE" 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_PropertyPlantAndEquipmentTypeDomain_814DCAA6E282D739035434AF91116779" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_A5744923ADEE5ABA4BA934AF9112B2EE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_A937E35CBEEB19D6EAB934AF9112DCC5" 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_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:to="loc_srt_RangeAxis_A937E35CBEEB19D6EAB934AF9112DCC5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_98ABB1A897A90732636734AF91137D3B" 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_srt_RangeAxis_A937E35CBEEB19D6EAB934AF9112DCC5" xlink:to="loc_srt_RangeMember_98ABB1A897A90732636734AF91137D3B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" 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_ScheduleOfPropertyPlantAndEquipmentTable_BCB8E9BBA5EAFF71ADB534AF9111CB77" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" 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_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_2FC1783424B0F10CF66034AF9113ACB0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" 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_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_C2366C138E4B4EC6FF2934AF91148BDD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" 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_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_3B116990E6FF663E49D134AF911408CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareNet" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" 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_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareNet_906F81CB806870E4B0AA34AF9114A52A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Depreciation" xlink:label="loc_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" 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_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_Depreciation_7DD65306A78DCCAA490134AF9114081E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareAmortization1" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" 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_PropertyPlantAndEquipmentLineItems_58F83CC806FC949138C034AF91139B1C" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareAmortization1_A7CE1CE68CA4FDE51A2234AF9114776E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipmentDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_87DB64CD321A5DC16D523A39786D7B4F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" 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_87DB64CD321A5DC16D523A39786D7B4F" xlink:to="loc_us-gaap_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_309F660916E24715C7193A39786DCD18" 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_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:to="loc_srt_RangeAxis_309F660916E24715C7193A39786DCD18" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" 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_srt_RangeAxis_309F660916E24715C7193A39786DCD18" xlink:to="loc_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_687B2C03A16C33364EE63A39786E683F" 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_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" xlink:to="loc_srt_MinimumMember_687B2C03A16C33364EE63A39786E683F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_9E041C13C53E2CB88EDB3A39786FA4CB" 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_srt_RangeMember_329AE0A44423A5616FA83A39786E0B26" xlink:to="loc_srt_MaximumMember_9E041C13C53E2CB88EDB3A39786FA4CB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" 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_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" 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_PropertyPlantAndEquipmentByTypeAxis_038E0110EB2D55346A453A39786FEAE8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LeaseholdsAndLeaseholdImprovementsMember" xlink:label="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" 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_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_LeaseholdsAndLeaseholdImprovementsMember_99908152E521A5EBC7273A39786F6E5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ComputerEquipmentMember" xlink:label="loc_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" 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_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_ComputerEquipmentMember_25AC7D9D3B404E5B13043A3978700C49" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" 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_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_FurnitureAndFixturesMember_770160FC6D818232339E3A397870DB04" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="loc_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" 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_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_MachineryAndEquipmentMember_B52AEDC4B5E4838D20703A3978704C58" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ToolsDiesAndMoldsMember" xlink:label="loc_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" 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_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_ToolsDiesAndMoldsMember_27907516E272922A82F73A397870EFC0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" 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_PropertyPlantAndEquipmentTypeDomain_52B51DF2C3420CE2022C3A39786F1F8F" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_B8AB0B594468398DC6313A397870439B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" 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_ScheduleOfPropertyPlantAndEquipmentTable_2F9132CB6D4AF31B90163A39786D17F9" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_LeaseholdImprovementsTerms" xlink:label="loc_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" 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_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:to="loc_irbt_LeaseholdImprovementsTerms_1B9AE07C3F2B277A9AEE3A3978707B1D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" 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_PropertyPlantAndEquipmentLineItems_5348939019B9D984ADA03A39787066AC" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentUsefulLife_2C87FFB1D5735FECBC353A397871134A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/PropertyAndEquipmentTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentAbstract" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_4D43BFB958AF665DC0441ECFD4848565" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_28D6FC025344A5F60C461ECFD484CA6C" 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_PropertyPlantAndEquipmentAbstract_4D43BFB958AF665DC0441ECFD4848565" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_28D6FC025344A5F60C461ECFD484CA6C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnaudited" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_E61815408E1EA7B6EACB1ECFD4771961" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock" xlink:label="loc_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E" 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_QuarterlyFinancialInformationDisclosureAbstract_E61815408E1EA7B6EACB1ECFD4771961" xlink:to="loc_us-gaap_QuarterlyFinancialInformationTextBlock_126C0F7DABE42861F6FA1ECFD477838E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnauditedDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_A4D756906D40EBFE23961ECFD6A68AF3" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_1A7323980A1D25977BE31ECFD6A73B66" 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_QuarterlyFinancialInformationDisclosureAbstract_A4D756906D40EBFE23961ECFD6A68AF3" xlink:to="loc_us-gaap_Revenues_1A7323980A1D25977BE31ECFD6A73B66" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SelectedQuarterlyFinancialInformationAbstract" xlink:label="loc_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" 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_QuarterlyFinancialInformationDisclosureAbstract_A4D756906D40EBFE23961ECFD6A68AF3" xlink:to="loc_us-gaap_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GrossProfit" xlink:label="loc_us-gaap_GrossProfit_DA1A4E335F5D657886431ECFD6A75750" 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_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:to="loc_us-gaap_GrossProfit_DA1A4E335F5D657886431ECFD6A75750" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaap_NetIncomeLoss_78E9C7EBF9D65D033EBD1ECFD6A84654" 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_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:to="loc_us-gaap_NetIncomeLoss_78E9C7EBF9D65D033EBD1ECFD6A84654" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaap_EarningsPerShareDiluted_BE2624E9CF55AF171D731ECFD6A83F20" 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_SelectedQuarterlyFinancialInformationAbstract_52DA126D955E93F660C71ECFD6A7D523" xlink:to="loc_us-gaap_EarningsPerShareDiluted_BE2624E9CF55AF171D731ECFD6A83F20" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/QuarterlyInformationUnauditedTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_QuarterlyFinancialInformationDisclosureAbstract" xlink:label="loc_us-gaap_QuarterlyFinancialInformationDisclosureAbstract_43A1FC16059C986D4C501ECFD5F42966" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D" 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_QuarterlyFinancialInformationDisclosureAbstract_43A1FC16059C986D4C501ECFD5F42966" xlink:to="loc_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock_F9BE1393A8077DC4546A1ECFD5F45C9D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRecognitionAndDeferredRevenueAbstract" xlink:label="loc_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_1AC4B896FA177D6AD8123C7CD862A3C0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsAndOtherReceivablesNetCurrent" xlink:label="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_0A77AD22332895BEB2B03C7CD862E91F" 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_RevenueRecognitionAndDeferredRevenueAbstract_1AC4B896FA177D6AD8123C7CD862A3C0" xlink:to="loc_us-gaap_AccountsAndOtherReceivablesNetCurrent_0A77AD22332895BEB2B03C7CD862E91F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B" 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_RevenueRecognitionAndDeferredRevenueAbstract_1AC4B896FA177D6AD8123C7CD862A3C0" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityRevenueRecognized_490B24A3A7BFED5C093A3C7CD863CC8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="loc_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8" 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_RevenueRecognitionAndDeferredRevenueAbstract_1AC4B896FA177D6AD8123C7CD862A3C0" xlink:to="loc_us-gaap_ContractWithCustomerLiability_36A447A8860988D2F5933C7CD8635BE8" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionContractBalancesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_44775D57D548D9F5F3461ECFD72D2DF0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619" 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_44775D57D548D9F5F3461ECFD72D2DF0" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_AE0C8C23793DEC5850261ECFD72D3619" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="loc_us-gaap_DisaggregationOfRevenueAbstract_4789CBAD5948C645E8113AB724E064A0" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" 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_DisaggregationOfRevenueAbstract_4789CBAD5948C645E8113AB724E064A0" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_D490F3CF0244C81AB6413AB724E0BAB1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srt_StatementGeographicalAxis_843A624A33C8F4CA02DE3AB724E1A7C4" 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_D490F3CF0244C81AB6413AB724E0BAB1" xlink:to="loc_srt_StatementGeographicalAxis_843A624A33C8F4CA02DE3AB724E1A7C4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" 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_srt_StatementGeographicalAxis_843A624A33C8F4CA02DE3AB724E1A7C4" xlink:to="loc_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd#country_US" xlink:label="loc_country_US_6502A2D0997A03A19F163AB724E156EB" 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_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:to="loc_country_US_6502A2D0997A03A19F163AB724E156EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EMEAMember" xlink:label="loc_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" 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_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:to="loc_us-gaap_EMEAMember_ABD227DFDEAB6475B07C3AB724E291C6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllOtherRegionsMember" xlink:label="loc_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" 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_srt_SegmentGeographicalDomain_B976D7EDCABE74BFDA6D3AB724E1B6FE" xlink:to="loc_irbt_AllOtherRegionsMember_7F18FE8339BB530B33763AB727B20392" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" 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_D490F3CF0244C81AB6413AB724E0BAB1" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" 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_43884B099CF808CB350F3AB724E2B3C1" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_CE9BB9DE403D9A0692483AB724E2A404" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_Revenues" xlink:label="loc_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" 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_DisaggregationOfRevenueLineItems_43884B099CF808CB350F3AB724E2B3C1" xlink:to="loc_us-gaap_Revenues_51C75E0BF845AB99B6813AB724E2B634" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionInitialApplicationDetails" xlink:type="extended" />
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RevenuefromContractwithCustomerInitialapplicationAbstract" xlink:label="loc_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" 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_irbt_RevenuefromContractwithCustomerInitialapplicationAbstract_84A18E2FEB9C92E47DD61ECFD715F63C" xlink:to="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis" xlink:label="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" 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_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:to="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain" xlink:label="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" 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_InitialApplicationPeriodCumulativeEffectTransitionAxis_6BE9BE23770E8DF44EB11ECFD716D103" xlink:to="loc_us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain_E0B7A42DED8E79E5560D1ECFD716482D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentsForNewAccountingPronouncementsAxis" xlink:label="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" 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_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:to="loc_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_9CE84D8996DD75729A621ECFD7173C8B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" 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_9CE84D8996DD75729A621ECFD7173C8B" xlink:to="loc_us-gaap_TypeOfAdoptionMember_C83DD84920B137A9A52B1ECFD7171C3C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" 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_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable_828871F97085E473BA9D1ECFD716AF25" xlink:to="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract" xlink:label="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" 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_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems_4319CFC38D27D05CF6C41ECFD71784E2" xlink:to="loc_us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract_289FC9F08213D7B29ACC1ECFD7179E8F" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionNotes" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRecognitionAndDeferredRevenueAbstract" xlink:label="loc_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_75107196B73D6A6EC5E21ECFD6872C4B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B" 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_RevenueRecognitionAndDeferredRevenueAbstract_75107196B73D6A6EC5E21ECFD6872C4B" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock_6C8A1CC474EF985512311ECFD687895B" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_EC90BEBA19FD902BF6181ECFD6443066" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenuePracticalExpedientAbstract" xlink:label="loc_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A" 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_EC90BEBA19FD902BF6181ECFD6443066" xlink:to="loc_us-gaap_RevenuePracticalExpedientAbstract_F038A0A64D61BEFB32AE1ECFD644426A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRecognitionAndDeferredRevenueAbstract" xlink:label="loc_us-gaap_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B" xlink:type="locator" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Refundliabilityproductreturns" xlink:label="loc_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" 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_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B" xlink:to="loc_irbt_Refundliabilityproductreturns_CBA1E436153F667387631ECFD3DA61BA" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Refundliabilityothercreditsandincentives" xlink:label="loc_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" 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_RevenueRecognitionAndDeferredRevenueAbstract_CF9DEB1BB09B23FD46341ECFD3DA4F2B" xlink:to="loc_irbt_Refundliabilityothercreditsandincentives_2090D3024167E7C79AA61ECFD3DA6D2E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_54E0C457B7E2D82ADD3F30F3B26B2CB7" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract" xlink:label="loc_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333" 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_54E0C457B7E2D82ADD3F30F3B26B2CB7" xlink:to="loc_us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract_1144886D401F71BFA90230F3B26C2333" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/RevenueRecognitionTables" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ContractBalancesAbstract" xlink:label="loc_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78" 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_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_1D6F87EE6D9B8ED379A41ECFD5E87C78" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_43713BE2D53B9464F5081ECFD5E8BAF7" 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_irbt_ContractBalancesAbstract_1F679894D3EE6237CB9E1ECFD5E8D71C" xlink:to="loc_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_43713BE2D53B9464F5081ECFD5E8BAF7" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/ShortTermInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_55786A63150DABED9C5620C3D6058037" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesTable" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" 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_55786A63150DABED9C5620C3D6058037" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" 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_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:to="loc_us-gaap_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" 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_FinancialInstrumentAxis_3C25EC9D6F9132E1511520C3D605A3B2" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BondsMember" xlink:label="loc_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" 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_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:to="loc_us-gaap_BondsMember_EB29F6FCAEA1E6E9FC5720C3D606F5B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConvertibleDebtMember" xlink:label="loc_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" 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_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_F64E372C3A53D9C7AF1320C3D6069E64" xlink:to="loc_us-gaap_ConvertibleDebtMember_578DC18314C94DA4127520C3D606E79B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" 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_ScheduleOfAvailableForSaleSecuritiesTable_DF80C634E66A6743ED4620C3D605427C" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesAbstract" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" 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_ScheduleOfAvailableForSaleSecuritiesLineItems_A69EF1E2EC34A8EA2A6520C3D6065E25" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesAmortizedCost" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" 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_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesAmortizedCost_ED32352643FC310567D620C3D607D917" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesCurrent" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" 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_AvailableForSaleSecuritiesAbstract_454B8BEAAD588748010C20C3D6065D76" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesCurrent_05D6E9474F57ABD9351F20C3D607517C" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensation" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_21EEC2B658DBB8CB1AF83A19249332BA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CompensationAndEmployeeBenefitPlansTextBlock" xlink:label="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_21EEC2B658DBB8CB1AF83A19249332BA" xlink:to="loc_us-gaap_CompensationAndEmployeeBenefitPlansTextBlock_E6A5010679BB5172FAFC3A19249409CE" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationEsppDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_DA02F8006C77E180B7F83A8F129A8C87" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" 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_DA02F8006C77E180B7F83A8F129A8C87" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_5DF5F2B046DBBA7D66823A8F129B4EA8" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:to="loc_us-gaap_AwardTypeAxis_5DF5F2B046DBBA7D66823A8F129B4EA8" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_C2ED7783A8549E58BAF23A8F129B7C3A" 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_5DF5F2B046DBBA7D66823A8F129B4EA8" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_C2ED7783A8549E58BAF23A8F129B7C3A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockMember" xlink:label="loc_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" 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_C2ED7783A8549E58BAF23A8F129B7C3A" xlink:to="loc_us-gaap_EmployeeStockMember_2FBF752FEF19DEF91EE73A8F129C228C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_148F0E7A6116106828FF3A8F129CE315" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:to="loc_srt_RangeAxis_148F0E7A6116106828FF3A8F129CE315" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" 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_srt_RangeAxis_148F0E7A6116106828FF3A8F129CE315" xlink:to="loc_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_893FFCB25C7F0A7FD07E3A8F129C027B" 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_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" xlink:to="loc_srt_MinimumMember_893FFCB25C7F0A7FD07E3A8F129C027B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_0E265778DFC1AA90B0433A8F129C39FF" 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_srt_RangeMember_C830926CC87B702B9C713A8F129CF593" xlink:to="loc_srt_MaximumMember_0E265778DFC1AA90B0433A8F129C39FF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_2FC9F3D3DC60ADA9651C3A8F129B19BB" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_9A9F29103483DF1762923A8F129D5AED" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_F5E3556241768407D54A3A8F129DDE48" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate_99C85043FE1F28C2EF753A8F129DFE56" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount" xlink:label="loc_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" 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_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount_0A6F6D0787DD6355D61C3A8F129D299D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" 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_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee_78D76BD685C000856BBF3A8F129D920B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_A1983D5824BBCD651A003A8F129E52CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent_BF67ADF0445CF28F4B353A8F129EADA4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_7AB65A3702A9D58AB5F53A8F129D9FB9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_1A0BAE9008BF4B8F6C793A8F129E8925" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_6CA68242AA2A5A4813163B1D3BF62B0B" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" 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_6CA68242AA2A5A4813163B1D3BF62B0B" xlink:to="loc_us-gaap_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RestatementAxis" xlink:label="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" 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_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:to="loc_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RestatementDomain" xlink:label="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" 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_srt_RestatementAxis_51014FB1AF776A986CA53B1D3BF660F3" xlink:to="loc_srt_RestatementDomain_93B083347D8C5E249F1F3B1D3BF71256" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" 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_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:to="loc_us-gaap_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ClassOfStockDomain" xlink:label="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" 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_StatementClassOfStockAxis_182F81B58DB8CAF9B5B93B1D3BF7FB62" xlink:to="loc_us-gaap_ClassOfStockDomain_A7247AC94C276CEB122C3B1D3BF7BF63" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_CD1BB188B06D14A2F6063B1D3BF77DC6" 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_StatementTable_CEBD6C112E95F429B4223B1D3BF6DB88" xlink:to="loc_us-gaap_StatementLineItems_CD1BB188B06D14A2F6063B1D3BF77DC6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_6CA68242AA2A5A4813163B1D3BF62B0B" xlink:to="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans_1442551F04A657C3190C3B1D3BF84DC7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_C9E4A94535C041504FBC3B1D3BF89338" 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_6CA68242AA2A5A4813163B1D3BF62B0B" xlink:to="loc_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_C9E4A94535C041504FBC3B1D3BF89338" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" 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_6CA68242AA2A5A4813163B1D3BF62B0B" xlink:to="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio_045BAAEF9242A5FC86073B1D3BF8FED5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_1D5924E4E0EEE4AD26BB3B1D3BF8808C" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_6CA68242AA2A5A4813163B1D3BF62B0B" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_1D5924E4E0EEE4AD26BB3B1D3BF8808C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_E645CE050A8AE7F2A1B03B1D3BF84537" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_6CA68242AA2A5A4813163B1D3BF62B0B" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_E645CE050A8AE7F2A1B03B1D3BF84537" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1AD20A72B77ABAA1321135F53F9AB5EB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" 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_1AD20A72B77ABAA1321135F53F9AB5EB" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_ED8AE882941F935DA95435F53F9B4299" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:to="loc_us-gaap_AwardTypeAxis_ED8AE882941F935DA95435F53F9B4299" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F" 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_ED8AE882941F935DA95435F53F9B4299" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" 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_59AE1D1E6146BAE5309235F53F9B485F" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_A92C303E6162B8D2FC9B35F53F9B148B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PerformanceSharesMember" xlink:label="loc_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_59AE1D1E6146BAE5309235F53F9B485F" xlink:to="loc_us-gaap_PerformanceSharesMember_9F6BAD85351C4DA7481F35F53F9B24DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_BDE9843001EBC07EB38635F53F9C0346" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:to="loc_srt_RangeAxis_BDE9843001EBC07EB38635F53F9C0346" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" 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_srt_RangeAxis_BDE9843001EBC07EB38635F53F9C0346" xlink:to="loc_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_804D95641DA90D81AAE235F53F9C353F" 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_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" xlink:to="loc_srt_MinimumMember_804D95641DA90D81AAE235F53F9C353F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_3D25EF6B32EE6063973235F53F9CD146" 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_srt_RangeMember_E72BAE2A5E18D8D7241735F53F9CEB67" xlink:to="loc_srt_MaximumMember_3D25EF6B32EE6063973235F53F9CD146" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_12D577E8540A2E71532035F53F9AE83D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_951C473EDDA9E95DC44835F53F9D2F85" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage_047D4620F776360F7B9935F53F9D9FCC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_3A9007E91E244FD255E535F53F9DF124" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_5CCA8AB70DAA51EFE8EC35F53F9DEE16" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_7E5861D3C9785FACDF6E35F53F9DFFA2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_73B16F8D06B98C10E1D535F53F9E6591" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_7F89DF4C8914AE2E739835F53F9EBC86" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_627BC99CA505D840CA2D35F53F9EE2E6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_F127BB0C56A4AC13291535F53F9EA6F7" 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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward_A700F3D91D935E7ED2E835F53F9D6C0D" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_F127BB0C56A4AC13291535F53F9EA6F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" 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_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_09B24BA522967C03583B35F53F9F2090" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_F55EB027AFE25BAAA2CD35F53F9F283A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_8A08ECAC56852BDA917C35F53F9F8769" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" 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_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_3040A21159168A7279EC35F53F9FA4E7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_C02C28CA5A4AD53934B635F53F9FF2B4" 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_A2B9C726FB3F4456AA2235F53F9E785A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_C02C28CA5A4AD53934B635F53F9FF2B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding_0F18730BBAF5DE8FEB4F35F53F9F76F7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms_BB348F174CF9DFA9B17535F53FA0CD50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" 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_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_54D7B1A20E2ED984797A35F53FA040AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_752492D6DCF4BBC5570C35F53F9DDE50" xlink:to="loc_us-gaap_SharePrice_45545FB38D1BD568E3ED35F53FA0474A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_112F926936FABAA1AC323AEE2822E791" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" 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_112F926936FABAA1AC323AEE2822E791" xlink:to="loc_us-gaap_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" 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_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" 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_IncomeStatementLocationAxis_8D739C2E91DC8A5D158D3AEE2822EF2E" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_876C8BAF5FC2632992893AEE28235AAB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CostOfSalesMember" xlink:label="loc_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" 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_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_CostOfSalesMember_408CF3F8FE7C8CBFCD9D3AEE2823BF50" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpenseMember" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" 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_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_3904EAC8788B93AEEC3B3AEE282473AA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" 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_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_SellingAndMarketingExpenseMember_747936110826BF7EF6063AEE2825E638" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" 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_876C8BAF5FC2632992893AEE28235AAB" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpenseMember_80A2EA7EA1D3C43FDF313AEE2825075B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" 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_StatementTable_C8F6970DCFAD5E036B783AEE28222AFF" xlink:to="loc_us-gaap_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" 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_D3ED9C3F66EE504FC47B3AEE28296357" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_3D158AD81DED778EF1FA3AEE2AC88321" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" 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_StatementLineItems_D3ED9C3F66EE504FC47B3AEE28296357" xlink:to="loc_us-gaap_ShareBasedCompensation_70B39182B87F797F4A353AEE282A1F62" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_4A8BFE573B51E83334B93AF307F2DADF" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" 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_4A8BFE573B51E83334B93AF307F2DADF" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_3594AA43A1511EEAB3CD3AF307F21212" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:to="loc_us-gaap_AwardTypeAxis_3594AA43A1511EEAB3CD3AF307F21212" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2" 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_3594AA43A1511EEAB3CD3AF307F21212" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_4FF40843B0348459ED0D3AF307F225FD" 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_AAEC7B3B24F7B8D9E9173AF307F267E2" xlink:to="loc_us-gaap_EmployeeStockOptionMember_4FF40843B0348459ED0D3AF307F225FD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_F4244C520017E0BA49503AF307F3AA70" 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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_AAEC7B3B24F7B8D9E9173AF307F267E2" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_F4244C520017E0BA49503AF307F3AA70" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_EA0734C8A03B57FDE0783AF307F32AB4" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:to="loc_srt_RangeAxis_EA0734C8A03B57FDE0783AF307F32AB4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" 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_srt_RangeAxis_EA0734C8A03B57FDE0783AF307F32AB4" xlink:to="loc_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_42F5D91EF266983947053AF307F31681" 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_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" xlink:to="loc_srt_MinimumMember_42F5D91EF266983947053AF307F31681" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_797579F9234F7E6A66223AF307F41D41" 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_srt_RangeMember_4D160CE82B7AE6396A113AF307F38795" xlink:to="loc_srt_MaximumMember_797579F9234F7E6A66223AF307F41D41" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_B8253E9DDA36A65882353AF307F2D5CF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross_82D8A80C2CCCC07E19D83B0227BF38BE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_E740E4BA6CBA156ED7D73AF307F4F5A6" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward_E740E4BA6CBA156ED7D73AF307F4F5A6" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_33229FCAF1FC7CC9004C3AF307F40C4F" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_dei_DocumentPeriodEndDate_33229FCAF1FC7CC9004C3AF307F40C4F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_8B9FCF4321C2B0376F9B3AF307F4012A" 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_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_8B9FCF4321C2B0376F9B3AF307F4012A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod" xlink:label="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_98FBEB634E2B087255223AF307F48F28" 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_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod_98FBEB634E2B087255223AF307F48F28" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod_28154553AFA6F1A836B33AF307F5224B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions_F2D580F4D524FBD22FF43AF307F552E9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_57E4ED5C86D3839880213AF307F58662" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_57E4ED5C86D3839880213AF307F58662" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_FD0D0F8E6BDF40042E263AF307F5F052" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_0F842F115890D51645033AF307F62DAA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod_DD7BA6724A9A66679DAF3AF307F64989" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_47B1DCCF8A9069ACED4A3AF307F63DA9" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_A645D3816E75DF5D6AB93AF307F51B32" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_47B1DCCF8A9069ACED4A3AF307F63DA9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_C9ACD668E89D882A43473AF307F777C6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_CF20FDDE6E373FD156F23AF307F8B634" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_F1EFFA1DF26D25F0747E3AF307F814E7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice_09F3DC29B239CAEACE053AF307F84F34" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1A0F23B092A7AC52FEC83AF307F8CDD5" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_AF4A249A898B81434FF83AF307F6E178" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_1A0F23B092A7AC52FEC83AF307F8CDD5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:type="locator" />
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber_AAACBB7269C59A918D213AF307F889FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:type="locator" />
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_50C33B8A2C5A42A4324C3AF307F823F4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_E0C5E6AB7743DD92FFB63AF307F825EB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_392DFDB73BECE3BF40C93AF307F846F0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_1EC5CD6267AD51665F033AF307F8676F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_83BFEE0EDAA587CCA6D03AF307F9F596" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_1A3522963E91E15878C23AF307F99689" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9A9E2108D3023F7052F73AF307F9FB0E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_C02E2F0F38DA42A3795C3AF307F94FC5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_B5509BE3393D719022B33AF307F8CA5A" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1_E69BD747B4B3FAE5D82C3AF307F9A0BF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharePrice" xlink:label="loc_us-gaap_SharePrice_AC0765F3A9E4A9166DC93AF307F99562" xlink:type="locator" />
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_63BA2384E535AB3BACEE3AF307F4684F" xlink:to="loc_us-gaap_SharePrice_AC0765F3A9E4A9166DC93AF307F99562" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_3570AC13532102DA418C1ECFD467D8A5" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" 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_3570AC13532102DA418C1ECFD467D8A5" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AwardTypeAxis" xlink:label="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:to="loc_us-gaap_AwardTypeAxis_4B34CDACC1783E917B211ECFD468E677" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" 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_4B34CDACC1783E917B211ECFD468E677" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1B64BBFF7D4A029470EA1ECFD4681388" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EmployeeStockOptionMember" xlink:label="loc_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" 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_1B64BBFF7D4A029470EA1ECFD4681388" xlink:to="loc_us-gaap_EmployeeStockOptionMember_E38C85136F63791D6FBB1ECFD468152B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_D682AA0E4C9A2754288A1ECFD4698D30" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:to="loc_srt_RangeAxis_D682AA0E4C9A2754288A1ECFD4698D30" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84" 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_srt_RangeAxis_D682AA0E4C9A2754288A1ECFD4698D30" xlink:to="loc_srt_RangeMember_538815B2027023A46F521ECFD4696E84" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" 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_srt_RangeMember_538815B2027023A46F521ECFD4696E84" xlink:to="loc_srt_MinimumMember_B797AD126A6BA362E2F21ECFD469A37E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_B9C186C1B4CDDFE72D741ECFD469571E" 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_srt_RangeMember_538815B2027023A46F521ECFD4696E84" xlink:to="loc_srt_MaximumMember_B9C186C1B4CDDFE72D741ECFD469571E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" 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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_066E9A34D00C267344DF1ECFD4676EAF" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue_B805D2E897BACF7CA0961ECFD46A49B4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_AAACABEFF238A981F9B31ECFD469E2AE" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum_D33FBB23B60320DE9E2C1ECFD46C0546" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum_18CEA1B4630DE3B3D51D1ECFD46CF240" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_BB7F950372739E398CF41ECFD46C792F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_35994A1705695468256F1ECFD46C555B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum_B61007017C174E4CED671ECFD46C77ED" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract_62D0B6704C831D5F00BB1ECFD46BEFB9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum_A732CF5C407211779ED41ECFD46DFAFD" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_B388FBCBCA3A95B87B781B45A05C17DD" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" 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_B388FBCBCA3A95B87B781B45A05C17DD" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable_557FB148F658D096B75A1B45A05C98DB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" 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_557FB148F658D096B75A1B45A05C98DB" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis_83871C559B90332AFFAB1B45A05CFA0F" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesOneMember" xlink:label="loc_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesOneMember_E5FD1CC7B8CECDE9ACD51B45A05D65D3" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesTwoMember" xlink:label="loc_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesTwoMember_C32B81D66E3945296FD31B45A06252BB" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesThreeMember" xlink:label="loc_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesThreeMember_B585279B35FA9017C2C41B45A062BE12" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesFourMember" xlink:label="loc_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesFourMember_AE8CD7EE7F1789DF3A121B45A06382DE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesFiveMember" xlink:label="loc_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesFiveMember_AFEF1D4E4106C97AE6C51B45A0633C3D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesSixMember" xlink:label="loc_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesSixMember_30511B0C5D191F10A6CF1B45A0636233" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesSevenMember" xlink:label="loc_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesSevenMember_5E9CE87F1BE8AE7250EA1B45A063CD8D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesEightMember" xlink:label="loc_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesEightMember_B605F7E06266B36886301B45A06491DE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesNineMember" xlink:label="loc_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesNineMember_BA4874A86D25FD1E7F961B45A064E97D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RangeOfExercisePricesTenMember" xlink:label="loc_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:type="locator" />
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain_6996E977F61CD75D29271B45A05D7F7D" xlink:to="loc_irbt_RangeOfExercisePricesTenMember_196E79BFD5E87FB1E40D1B45A064835B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" 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_557FB148F658D096B75A1B45A05C98DB" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit_FE65CE244873A5208CC01B45A064F079" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit_21FF3D06EEE651DF858F1B45A0654C00" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions_E5621EA955BBFE890ADD1B45A06585EA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2_79F416861CA51C7414101B45A0658545" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1_DB8BE2783D1111D7D91C1B45A0652BCC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions" xlink:label="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions_83153201D80AEA2B32A71B45A065C8C5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1" xlink:label="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" 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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems_EB4C7B2CFAB814E544711B45A064B084" xlink:to="loc_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1_A104135B0136AF997EFE1B45A065847D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockBasedCompensationTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_91688CE6492EE2DC885430F3B1A37970" xlink:type="locator" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationTable" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" 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_91688CE6492EE2DC885430F3B1A37970" xlink:to="loc_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_59769C1DBB35604026FD3124E6B165AB" 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_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_59769C1DBB35604026FD3124E6B165AB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_03D10E0E87C5A6C269013124E6B3378D" 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_StatementEquityComponentsAxis_59769C1DBB35604026FD3124E6B165AB" xlink:to="loc_us-gaap_EquityComponentDomain_03D10E0E87C5A6C269013124E6B3378D" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationLineItems" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" 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_irbt_SharebasedcompensationexpensebyclassificationTable_061A90597118ED08D5B230F3B1A384C1" xlink:to="loc_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SharebasedcompensationexpensebyclassificationTableTextBlock" xlink:label="loc_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" 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_irbt_SharebasedcompensationexpensebyclassificationLineItems_DAA900A66E598FEC375930F3B1A3C33C" xlink:to="loc_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock_4066AC46213CE552461930F3B1A36A3F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_91688CE6492EE2DC885430F3B1A37970" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_02503AE15744EA757C6630F3B1A438CA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_91688CE6492EE2DC885430F3B1A37970" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_556CA997E07B1B27D2FC30F3B1A4CFCA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A" 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_91688CE6492EE2DC885430F3B1A37970" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock_89AE6EB7C55783BAA57D30F3B1A42F1A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_91688CE6492EE2DC885430F3B1A37970" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock_51140B73B85750AF1F1230F3B1A4A9DD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock" xlink:label="loc_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7" 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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_91688CE6492EE2DC885430F3B1A37970" xlink:to="loc_us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock_5AADC205CF91D2D3CDAA30F3B1A48CE7" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1" 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_91688CE6492EE2DC885430F3B1A37970" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock_FB853508750984C6A1A830F3B1A4A7C1" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockholdersEquity" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_9D85C9C525CB0E6E55221ECFD59A10FE" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E" 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_EquityAbstract_9D85C9C525CB0E6E55221ECFD59A10FE" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_5BCBC8E8303005EE5D381ECFD59B4C2E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/StockholdersEquityDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityAbstract" xlink:label="loc_us-gaap_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_984093445A6CE3EC09B13A397769838F" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_984093445A6CE3EC09B13A397769838F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_AECE022AE0E3D22FBC5A3A397769592D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_PreferredStockSharesIssued_07851B3294E42E7D8A723A3977694194" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_4D451B405DD808C593203A397769826F" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_4D451B405DD808C593203A397769826F" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_CommonStockNumberOfVotesPerShare" xlink:label="loc_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_irbt_CommonStockNumberOfVotesPerShare_742191840F7B340F850F3A39776A745C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_A6D43C851493C2884B1A3A39776AD209" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased" xlink:label="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased_B13643214F59A75503493A39776AAF81" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_StockRepurchaseProgramCommencementDate" xlink:label="loc_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_irbt_StockRepurchaseProgramCommencementDate_B80225B756B5D08F62B53A39776A660B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchaseProgramExpirationDate" xlink:label="loc_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_StockRepurchaseProgramExpirationDate_97ABD57BE281A9ADD0BB3A39776AB7CB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_2A616A7FD371EA63F1643A39776AD8D1" 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_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares_2A616A7FD371EA63F1643A39776AD8D1" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue" xlink:label="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_4056F76DAB78C79F83FA3A39776B29A6" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_9FE82AA4BDBED154CC703A39776999AA" xlink:to="loc_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue_4056F76DAB78C79F83FA3A39776B29A6" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_0A840F6E7B9A7F52640D1ECFD582116A" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D" 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_AccountingPoliciesAbstract_0A840F6E7B9A7F52640D1ECFD582116A" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_D62E6A406946F446D8A61ECFD582769D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:href="irbt-20191228.xsd#irbt_IncometaxesAbstract" xlink:label="loc_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_9BD2E696FA926A7EA0F830919262D72E" 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_irbt_IncometaxesAbstract_D23C0764D7E4B20AE5F63091926188DB" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_9BD2E696FA926A7EA0F830919262D72E" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsAbstract" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_1F6397904CA8718613A935EADD0232F1" xlink:type="locator" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccountingPoliciesTable" xlink:label="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" 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_CashAndCashEquivalentsAbstract_1F6397904CA8718613A935EADD0232F1" xlink:to="loc_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" 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_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" 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_ValuationAllowancesAndReservesTypeAxis_5DF1AD485EF054C0D6A635EADD034269" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceforproductreturnsMember" xlink:label="loc_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" 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_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:to="loc_irbt_AllowanceforproductreturnsMember_D3D8FDD4041A64503CAB35EADD0486E5" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AllowanceForPriceProtectionMember" xlink:label="loc_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" 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_ValuationAllowancesAndReservesDomain_E39EEADDF73840F96AAD35EADD03FB56" xlink:to="loc_irbt_AllowanceForPriceProtectionMember_8FF42562A8E8F21C0D7735EADD049600" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_4AB2E6E1474F8B4EE44335EADD04672D" 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_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_4AB2E6E1474F8B4EE44335EADD04672D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19" 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_PropertyPlantAndEquipmentByTypeAxis_4AB2E6E1474F8B4EE44335EADD04672D" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SoftwareAndSoftwareDevelopmentCostsMember" xlink:label="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8ECABD6B21C0D5A5609035EADD05CE5E" 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_PropertyPlantAndEquipmentTypeDomain_3F9218135DBCB2DBDD6435EADD040D19" xlink:to="loc_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember_8ECABD6B21C0D5A5609035EADD05CE5E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" 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_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" 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_ConcentrationRiskByTypeAxis_043AE9E5237AC5BB8ABD35EADD0535C0" xlink:to="loc_us-gaap_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="loc_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" 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_ConcentrationRiskTypeDomain_F53CABB8A67C531235BA35EADD05379A" xlink:to="loc_us-gaap_CustomerConcentrationRiskMember_E5E5E828B5508093067035EADD05ACB3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" 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_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" 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_ConcentrationRiskByBenchmarkAxis_411AB1DBFE96FB9E858F35EADD0604FC" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountsReceivableMember" xlink:label="loc_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" 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_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:to="loc_us-gaap_AccountsReceivableMember_5953D577F66A4D57A9D435EADD0643B5" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SalesRevenueNetMember" xlink:label="loc_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" 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_ConcentrationRiskBenchmarkDomain_4784BA67C5DCA70728C335EADD060AAB" xlink:to="loc_us-gaap_SalesRevenueNetMember_4648927C3732C875DFC235EADD0B1A70" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MajorCustomersAxis" xlink:label="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" 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_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_NameOfMajorCustomerDomain" xlink:label="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" 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_srt_MajorCustomersAxis_FFC70DB46C70C7078EFE35EADD0C8A5D" xlink:to="loc_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TwoCustomersMember" xlink:label="loc_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" 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_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_TwoCustomersMember_C2BA5DE23CE660ED275635EADD0C3DFC" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AmazonMember" xlink:label="loc_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" 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_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_AmazonMember_0D73D4ED014BD30023E235EADD0C5549" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ThreeCustomersMember" xlink:label="loc_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" 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_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember" xlink:label="loc_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" 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_irbt_ThreeCustomersMember_4AA7A75D0F458FFA439F35EADD0D9E55" xlink:to="loc_irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember_356B32F0135C1FD424A935EADD0D2BE1" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_SalesOnDemandCorporationSODCMember" xlink:label="loc_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" 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_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_SalesOnDemandCorporationSODCMember_E54BE54313657037551135EADD0D780B" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisMember" xlink:label="loc_irbt_RobopolisMember_A36D4025EE78E75D98A735EADD0D30E8" 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_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_RobopolisMember_A36D4025EE78E75D98A735EADD0D30E8" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RobopolisSASMember" xlink:label="loc_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" 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_srt_NameOfMajorCustomerDomain_11FB809698951472CD0935EADD0C5858" xlink:to="loc_irbt_RobopolisSASMember_BD4C24B7D7288EF00EC735EADD0D6574" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeAxis" xlink:label="loc_srt_RangeAxis_83B9CD66A52D411EEFBD35EADD0EB13B" 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_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_srt_RangeAxis_83B9CD66A52D411EEFBD35EADD0EB13B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_RangeMember" xlink:label="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" 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_srt_RangeAxis_83B9CD66A52D411EEFBD35EADD0EB13B" xlink:to="loc_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MinimumMember" xlink:label="loc_srt_MinimumMember_19AC65A6FEA9CC57735935EADD0E5151" 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_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" xlink:to="loc_srt_MinimumMember_19AC65A6FEA9CC57735935EADD0E5151" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd#srt_MaximumMember" xlink:label="loc_srt_MaximumMember_B224F6A07BA673E1668335EADD0EE3A6" 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_srt_RangeMember_503D52D64B28F217EA9335EADD0E9755" xlink:to="loc_srt_MaximumMember_B224F6A07BA673E1668335EADD0EE3A6" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_AccountingPoliciesLineItems" xlink:label="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" 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_irbt_AccountingPoliciesTable_6866E1141189DCE079F535EADD03BBBC" xlink:to="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:type="arc" />
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_dei_DocumentPeriodEndDate_0669F7669FE818BA681235EADD0E994F" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_dei_DocumentPeriodEndDate_0669F7669FE818BA681235EADD0E994F" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_WarrantyTerm" xlink:label="loc_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_irbt_WarrantyTerm_C10BCB2CB0294272F1E635EADD0F3E6B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_22262F2AF2FF7ACF696035EADD0F047E" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_22262F2AF2FF7ACF696035EADD0F047E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ValuationAllowancesAndReservesBalance" xlink:label="loc_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_ValuationAllowancesAndReservesBalance_F8DE568B031797790FC635EADD0F77AC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="loc_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_CashEquivalentsAtCarryingValue_71D835CA57E48B2B54B535EADD0FB735" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ExtendedProductWarrantyDescription" xlink:label="loc_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_ExtendedProductWarrantyDescription_C25B31DB8146F89E7D1435EADD0F4512" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures" xlink:label="loc_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures_3908C4B197CE473341E935EADD0F2187" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CapitalizedComputerSoftwareGross" xlink:label="loc_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_CapitalizedComputerSoftwareGross_73EED2D20CF26559811335EADD10EF5C" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdjustmentForAmortization" xlink:label="loc_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_AdjustmentForAmortization_E99A4B026B4BD47F6D0835EADD10EA87" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingExpense" xlink:label="loc_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_AdvertisingExpense_FBFE1BE1A1EF812ACF8635EADD10A706" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_D89BAB84614FD4C3F6A335EADD10AA77" xlink:type="locator" />
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_D89BAB84614FD4C3F6A335EADD10AA77" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit_FE2CF742857B3E0D52A835EADD10301E" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit" xlink:label="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit_B5DB9BB801984DB2182035EADD11820A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit" xlink:label="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit_C849C6BD371F0CAB7D7F35EADD110C37" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="loc_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_ConcentrationRiskPercentage1_5ABD0CDD6FDF33B7D95435EADD1137B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" 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_irbt_AccountingPoliciesLineItems_95EC8758816E9015AB0E35EADD0EF22A" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_2482037E5F44BB4E76A435EADD164AE1" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract" xlink:label="loc_us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SecurityOwnedNotReadilyMarketableTable" xlink:label="loc_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" 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_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4" xlink:to="loc_us-gaap_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" 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_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" 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_StatementEquityComponentsAxis_973913061593FA19177635F540AF556D" xlink:to="loc_us-gaap_EquityComponentDomain_6714E410BF20A2FB3AF935F540B07161" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_SecurityOwnedNotReadilyMarketableLineItems" xlink:label="loc_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" 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_SecurityOwnedNotReadilyMarketableTable_A3191C2EC43EE2D51D2335F540AFE54A" xlink:to="loc_us-gaap_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GainLossOnSaleOfEquityInvestments" xlink:label="loc_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" 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_SecurityOwnedNotReadilyMarketableLineItems_35D634F5B1FC9557A3B235F540B02742" xlink:to="loc_us-gaap_GainLossOnSaleOfEquityInvestments_A6C6A8CCC85E406F42F835F540B02DF6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount" xlink:label="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A" 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_InvestmentsDebtAndEquitySecuritiesAbstract_6AA05D27A70306B745AB35F540AF4AD4" xlink:to="loc_us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount_895D378EE397EA51708F35F540B1434A" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A" 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_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_BasisOfAccountingPolicyPolicyTextBlock_744F25BA6B07C8018A7A3C4AC0C0CC4A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FiscalPeriod" xlink:label="loc_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF" 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_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_FiscalPeriod_6C24938D47843C8272903C4AC0C037DF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_UseOfEstimates_B36AD6585663B15069783C4AC0C02FCE" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B" 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_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_BusinessCombinationsPolicy_BCBD6A56AFEAEB160BAD3C4AC0C0168B" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock" xlink:label="loc_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_RevenueRecognitionPolicyTextBlock_CAFF6636A6AD5BE60A3A3C4AC0C0C363" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_CashAndCashEquivalentsPolicyTextBlock_6DB8562A05D7F428A99A3C4AC0C0E96E" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ShortTermInvestmentsPolicyTextBlock" xlink:label="loc_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" 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_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_irbt_ShortTermInvestmentsPolicyTextBlock_D2EAF45611D8454922443C4AC0C1B8FC" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock" xlink:label="loc_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF" xlink:type="locator" />
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_ReceivablesPolicyTextBlock_34D2731AA6432835C64A3C4AC0C198FF" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649" xlink:type="locator" />
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_InventoryPolicyTextBlock_7D00E29DABACE9A60F593C4AC0C1F649" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_StandardProductWarrantyPolicy" xlink:label="loc_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A" 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_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_StandardProductWarrantyPolicy_0CF7E4088B4FC0A209053C4AC0C1640A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E" 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_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_EC950517DE037B75FE7F3C4AC0C10B6E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA" 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_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock_33D44C2A97B23F04815F3C4AC0C2BDDA" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InvestmentPolicyTextBlock" xlink:label="loc_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4" xlink:type="locator" />
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_InvestmentPolicyTextBlock_72D13A3AB6B2499CEDBA3C4AC0C2BBF4" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DerivativesPolicyTextBlock" xlink:label="loc_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912" 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_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_DerivativesPolicyTextBlock_64D631EBE2692930FC6D3C4AC0C27912" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A" xlink:type="locator" />
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_0A1D00D5C0C06453C93C3C4AC0C20A2A" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076" xlink:type="locator" />
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_35AAD555D8833684C8033C4AC0C28076" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246" xlink:type="locator" />
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpensePolicy_A2D862ACD4069D54E28B3C4AC0C2A246" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_InternalUseSoftwarePolicy" xlink:label="loc_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3" xlink:type="locator" />
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_InternalUseSoftwarePolicy_C32B66C22623FBF75CEA3C4AC0C342C3" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AdvertisingCostsPolicyTextBlock" xlink:label="loc_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0" xlink:type="locator" />
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_AdvertisingCostsPolicyTextBlock_47D3D64FE87018E010393C4AC0C323B0" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64" xlink:type="locator" />
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_IncomeTaxPolicyTextBlock_05BA9604F8F7799169263C4AC0C3CB64" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28" xlink:type="locator" />
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_ConcentrationRiskDisclosureTextBlock_631E20A6B48486DC951F3C4AC0C3CD28" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock" xlink:label="loc_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9" xlink:type="locator" />
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_EarningsPerSharePolicyTextBlock_8995182D2F6C34317B5E3C4AC0C3F0C9" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4" xlink:type="locator" />
    <link:presentationArc order="23" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_858A784578D8647C0CAF3C4AC0BF0E92" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_27FA18BF9413AE72AD373C4AC0C3AFD4" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_AvailableForSaleSecuritiesTextBlock" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1" 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_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesTextBlock_6E7C9EA83758ED2174E51ECFD44BF0B1" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock" xlink:label="loc_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" 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_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:to="loc_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock_3C890410D0E213CFBAA11ECFD44B804E" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTextBlock_3DA21C217319751823D31ECFD44B4CB6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149" 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_AccountingPoliciesAbstract_96041033FA82F95A90591ECFD44A26F1" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_AF8AF9D8E360B05F4C0D1ECFD44BB149" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/WorkingCapitalFacilities" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_08BCA35194533A1FA4B81ECFD4F88B58" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D" 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_DebtDisclosureAbstract_08BCA35194533A1FA4B81ECFD4F88B58" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_4CCBFBBAF6532F2791C11ECFD4F8DC5D" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:role="http://www.irobot.com/role/WorkingCapitalFacilitiesDetails" xlink:type="extended">
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaap_DebtDisclosureAbstract_86E74441324161FB173930616487B39F" xlink:type="locator" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LettersOfCreditOutstandingAmount" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81" 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_DebtDisclosureAbstract_86E74441324161FB173930616487B39F" xlink:to="loc_us-gaap_LettersOfCreditOutstandingAmount_A0CD7EA82563C593BEDB306164881F81" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_RevolvingLineOfCreditTextualAbstract" xlink:label="loc_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" 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_DebtDisclosureAbstract_86E74441324161FB173930616487B39F" xlink:to="loc_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD" 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_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_203EB249E55EDF9CE37B306164882FAD" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityInterestRateDescription" xlink:label="loc_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD" 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_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:to="loc_us-gaap_LineOfCreditFacilityInterestRateDescription_CB9AF0387438DB10B25230616488F5DD" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_InterestRateAboveLIBORUnderConditionOne" xlink:label="loc_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:type="locator" />
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:to="loc_irbt_InterestRateAboveLIBORUnderConditionOne_A468075E499D0CEB57B430616489D839" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo" xlink:label="loc_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" 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_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:to="loc_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo_D0DE0647B70644F1E39A30616489AFD0" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo" xlink:label="loc_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:type="locator" />
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:to="loc_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo_00F5A0B8747098556B0030616489D684" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="loc_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283" xlink:type="locator" />
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_irbt_RevolvingLineOfCreditTextualAbstract_446921F0C684ACDB3CDB3061648801E6" xlink:to="loc_us-gaap_LineOfCreditFacilityExpirationDate1_D05874426693D9E82AB8306164896283" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCredit" xlink:label="loc_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE" 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_DebtDisclosureAbstract_86E74441324161FB173930616487B39F" xlink:to="loc_us-gaap_LineOfCredit_9EA7469100A9EBBBFAF13061648981BE" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Letterofcreditfacilitymaximumborrowing" xlink:label="loc_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" 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_DebtDisclosureAbstract_86E74441324161FB173930616487B39F" xlink:to="loc_irbt_Letterofcreditfacilitymaximumborrowing_8199C2E6FDD446CE6C6330616489362F" xlink:type="arc" />
    <link:loc xlink:href="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd#us-gaap_LineOfCreditFacilityCommitmentFeePercentage" xlink:label="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A" 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_DebtDisclosureAbstract_86E74441324161FB173930616487B39F" xlink:to="loc_us-gaap_LineOfCreditFacilityCommitmentFeePercentage_449851B707B20B5516DD3061648A471A" xlink:type="arc" />
    <link:loc xlink:href="irbt-20191228.xsd#irbt_Lineofcreditmaximumamount" xlink:label="loc_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" 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_DebtDisclosureAbstract_86E74441324161FB173930616487B39F" xlink:to="loc_irbt_Lineofcreditmaximumamount_62E0F718D513B1CF5D5D3086C7F38633" xlink:type="arc" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822887776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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 );">Stockholders' Equity</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">13.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Stockholders' Equity</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Preferred Stock</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has authorized </span><span style="font-family:inherit;font-size:10pt;"><span>5,000,000</span></span><span style="font-family:inherit;font-size:10pt;"> shares of undesignated preferred stock with a par value of </span><span style="font-family:inherit;font-size:10pt;"><span>$0.01</span></span><span style="font-family:inherit;font-size:10pt;"> per share. None of the preferred shares were issued and outstanding at </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Common Stock</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Common stockholders are entitled to </span><span style="font-family:inherit;font-size:10pt;"><span>one</span></span><span style="font-family:inherit;font-size:10pt;"> vote for each share held and to receive dividends if and when declared by the Company's board of directors and subject to and qualified by the rights of holders of the preferred stock. Upon dissolution or liquidation of the Company, holders of common stock will be entitled to receive all available assets subject to any preferential rights of any then outstanding preferred stock.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Share Repurchase Activity</span></div><span style="font-family:inherit;font-size:10pt;">On February 27, 2018, the Company's board of directors approved a stock repurchase program authorizing up to </span><span style="font-family:inherit;font-size:10pt;"><span>$50.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> in share repurchases. This share repurchase program commenced on March 28, 2018 with an expiration date of December 28, 2018. As of June 30, 2018, the Company completed the repurchase program and repurchased </span><span style="font-family:inherit;font-size:10pt;"><span>798,794</span></span><span style="font-family:inherit;font-size:10pt;"> shares of common stock totaling </span><span style="font-family:inherit;font-size:10pt;"><span>$50.0 million</span></span>.<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://fasb.org/us-gaap/role/ref/legacyRef<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>14
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813661184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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 );">Income Taxes</a></td>
<td class="text"><div style="line-height:120%;padding-left:0px;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;width:99.80506822612085%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">17.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Income Taxes</span></div></td></tr></table></div></div><div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Income (loss) before provision for income taxes was as follows (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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="12"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>84,225</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>113,078</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,382</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,608</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,456</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,984</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income before income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>98,833</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>108,622</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>76,366</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of income tax expense were as follows (in thousands):</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Current</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13,366</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,627</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,555</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,004</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,676</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,691</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,941</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,732</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,355</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total current income tax provision</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>25,311</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>32,035</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>26,601</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Federal</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(9,345</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(2,475</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>6,664</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,783</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,149</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,470</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(650</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(7,781</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,393</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:top;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred income tax provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(11,778</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(11,405</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,199</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total income tax provision</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,533</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,630</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,402</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code. Effective for the Company's 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of </span><span style="font-family:inherit;font-size:10pt;"><span>$11.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> in the fourth quarter of 2017 which included a provisional amount of </span><span style="font-family:inherit;font-size:10pt;"><span>$8.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and </span><span style="font-family:inherit;font-size:10pt;"><span>$3.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and determined no material adjustments to the provisional amounts recorded were required.</span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The reconciliation of statutory federal income tax to actual tax expense is as follows (in thousands):</span></div><div style="line-height:120%;padding-top:10px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Statutory federal income tax</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>20,755</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>22,812</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>26,728</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State taxes (net of federal benefit)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,999</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,312</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,089</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Federal and state credits</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(8,152</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,638</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,486</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic production activities deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,528</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Excess tax benefits relating to stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(6,468</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(6,529</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(11,709</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Tax Cuts and Jobs Act of 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,127</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,861</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign-derived intangible income deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,180</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,678</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">EMEA business restructuring</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,292</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Executive compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,081</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>745</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,354</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tax impact of foreign earnings</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,986</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,336</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(636</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Change in valuation allowance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,678</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>348</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>800</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>834</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,503</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>929</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,533</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,630</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,402</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;"><br/></span></div><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of net deferred tax assets were as follows (in thousands):</span></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"/></tr><tr><td style="width:75%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue reserves</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>21,355</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,420</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accruals and other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,225</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,844</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,117</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tax credits and net operating loss carryforwards</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,814</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,781</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,981</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,975</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,068</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,087</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>62,560</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>42,107</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Valuation allowance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,826</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,148</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Total deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>58,734</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>40,959</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,838</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,317</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease right-of-use assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,249</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>768</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>668</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,855</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,985</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>40,879</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,974</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> The Company intends to continue to invest all of its unremitted foreign earnings, as well as the capital in its foreign subsidiaries, indefinitely outside of the U.S. At December 28, 2019, the Company has unremitted foreign earnings and any unrecognized deferred tax liability on these unremitted earnings would be immaterial.</span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has federal net operating loss carryforwards of </span><span style="font-family:inherit;font-size:10pt;"><span>$1.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> as of December 28, 2019. The Company had foreign net operating loss carryforwards of </span><span style="font-family:inherit;font-size:10pt;"><span>$3.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> as of December 29, 2018 that were fully utilized during tax year ended December 28, 2019. The Company has state research and development credit carryforwards of </span><span style="font-family:inherit;font-size:10pt;"><span>$13.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$10.7 million</span></span><span style="font-family:inherit;font-size:10pt;"> as of December 28, 2019 and December 29, 2018, respectively, which expire from 2028 to 2034. Under the Internal Revenue Code and state law, certain substantial changes in the Company&#8217;s ownership could result in an annual limitation on the amount of these tax carryforwards which can be utilized in future years. As of December 28, 2019, December 29, 2018 and December 30, 2017, the Company had a valuation allowance of </span><span style="font-family:inherit;font-size:10pt;"><span>$3.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$0.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, for state research </span></div><div style="line-height:120%;padding-top:10px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">and development credit carryforwards and certain foreign deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.</span></div><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A summary of the Company&#8217;s adjustments to its gross unrecognized tax benefits in the current year is as follows (in thousands):</span></div><div style="line-height:120%;padding-top:10px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>7,119</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>4,590</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>5,146</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase for tax positions related to the current year</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>770</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,891</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>580</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase for tax positions related to acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,493</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase (decrease) for tax positions related to prior years</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(768</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>407</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(523</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Decrease for settlements with applicable taxing authorities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,262</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Decrease for lapses of statute of limitations</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(613</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,121</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,119</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,590</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During the fourth quarter of 2018, the Company finalized the purchase accounting related to its acquisition of Robopolis and recorded a $1.5 million adjustment for uncertain pre-acquisition income tax positions in various taxing jurisdictions against goodwill. In addition, the Company recorded a charge of $2.3 million for estimated taxes associated with a restructuring of the EMEA business during fiscal 2018. The Company accrues interest and, if applicable, penalties for any uncertain tax positions as a component of income tax expense.  As of December 28, 2019, December&#160;29, 2018 and December&#160;30, 2017 there were no material accrued interest or penalties.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company is subject to taxation in the United States (federal and state) and foreign jurisdictions.  The statute of limitations for examinations by the Internal Revenue Service (the "IRS") and state tax authorities is closed for fiscal years prior to 2014.  Federal and state carryforward attributes that were generated prior to fiscal 2014 may still be adjusted upon examination by the federal or state tax authorities if they either have been or will be used in a period for which the statute of limitations is still open.  The Company is currently under examination by the IRS for the years 2014 and 2015. There are other ongoing audits in various other jurisdictions that are not material to the Company's financial statements.&#160; The Company regularly assesses the likelihood of adverse outcomes resulting from these examinations to determine the adequacy of its provision for income taxes. The Company continues to monitor the progress of ongoing discussions with tax authorities and the effect, if any, of the expected expiration of the statute of limitations in various taxing jurisdictions.&#160; The Company believes that an adequate provision has been made for any adjustments that may result from tax examinations. However, the outcome of tax audits cannot be predicted with certainty. If any issues addressed in the Company's tax audits are resolved in a manner not consistent with management's expectations, the Company could be required to adjust its provision for income taxes in the period such resolution occurs. Although the timing of resolution, settlement, and closure of audits is not certain, it is reasonably possible that certain U.S. federal and non-U.S. tax audits may be concluded within the next 12 months, which could increase or decrease the balance of the Company's gross unrecognized tax benefits. The Company does not expect a significant change in the amount of unrecognized tax benefits within the next 12 months. If all of the Company's unrecognized tax benefits as of December&#160;28, 2019 were to become recognizable in the future, it would record a </span><span style="font-family:inherit;font-size:10pt;"><span>$7.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> benefit, inclusive of interest, to the income tax provision.</span></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://fasb.org/us-gaap/role/ref/legacyRef<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>15
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6725795104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_AvailableForSaleSecuritiesTextBlock', window );">Components of available for sale securities</a></td>
<td class="text"><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"/></tr><tr><td style="width:45%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,016</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>30,035</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>29,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total short term investments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,016</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,035</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,605</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><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_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock', window );">Activity related to accounts receivable allowances</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Activity related to accounts receivable allowances was as follows (in thousands):</span><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"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Allowance for product returns</span></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="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>53,920</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>42,693</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>27,673</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquired balance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,088</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,575</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>68,476</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>54,981</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(68,217</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(56,164</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(43,831</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,087</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,085</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,218</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>55,191</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>53,920</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>42,693</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Allowance for other credits and incentives</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>97,737</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>61,359</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquired balance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,932</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Adjustment related to adoption of ASC 606</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,192</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>287,891</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>198,371</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>110,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(247,775</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(161,672</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(81,269</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,807</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,513</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,567</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>134,046</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>97,737</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>61,359</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_PropertyPlantAndEquipmentTextBlock', window );">Property and equipment</a></td>
<td class="text">Depreciation is computed using the straight-line method over the estimated useful lives as follows:<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="3"/></tr><tr><td style="width:59%;"/><td style="width:40%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Estimated Useful&#160;Life</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5 years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3-7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>Lesser of economic benefit period or term&#160;of&#160;lease</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment consists of the following (in thousands):</span></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="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13,588</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>12,339</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,494</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,231</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>79,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>60,281</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>39,538</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,701</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,933</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>15,638</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Subtotal</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>156,766</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>122,190</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: accumulated depreciation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>80,778</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>65,164</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>75,988</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>57,026</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Basic and diluted net income per share</a></td>
<td class="text">The following table presents the calculation of both basic and diluted net income per share:<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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>85,300</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>87,992</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>50,964</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Weighted-average shares outstanding</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,097</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>27,692</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>27,611</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Dilutive effect of employee stock plans</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>638</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>948</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,142</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted weighted-average shares outstanding</span></div></td><td colspan="2" 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;"><span style="font-family:inherit;font-size:10pt;"><span>28,735</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,640</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,753</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Basic income per share</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.04</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.18</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.85</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted income per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2.97</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.07</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.77</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule Of Accounts Receivable Allowances [Table Text Block]</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;">irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_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_AvailableForSaleSecuritiesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 available-for-sale securities which includes, but is not limited to, changes in the cost basis and fair value, fair value and gross unrealized gain (loss), fair values by type of security, contractual maturity and classification, amortized cost basis, contracts to acquire securities to be accounted for as available-for-sale, debt maturities, transfers to trading, change in net unrealized holding gain (loss) net of tax, continuous unrealized loss position fair value, aggregate losses qualitative disclosures, other than temporary impairment (OTTI) losses or other disclosures related to available for sale 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;">us-gaap_AvailableForSaleSecuritiesTextBlock</td>
</tr>
<tr>
<td style="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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for 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://fasb.org/us-gaap/role/ref/legacyRef<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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="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>16
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813231104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and other intangible assets - Goodwill (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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>
<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_GoodwillAcquiredDuringPeriod', window );">Goodwill, Acquired During Period</a></td>
<td class="nump">$ 2,050<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_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</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_Goodwill', window );">Goodwill</a></td>
<td class="nump">118,896<span></span>
</td>
<td class="nump">$ 121,440<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Acquisition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">830<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Effect of foreign currency translation</a></td>
<td class="num">(2,214)<span></span>
</td>
<td class="num">(3,374)<span></span>
</td>
</tr>
<tr class="re">
<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">$ 118,732<span></span>
</td>
<td class="nump">$ 118,896<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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_GoodwillAcquiredDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAcquiredDuringPeriod</td>
</tr>
<tr>
<td style="padding-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_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_GoodwillForeignCurrencyTranslationGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 increases (decreases) an asset representing future economic benefits 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillForeignCurrencyTranslationGainLoss</td>
</tr>
<tr>
<td style="padding-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_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 adjustments after acquisition date under purchase accounting of an asset representing the 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=116868678&amp;loc=d3e961-128460<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-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_GoodwillRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_GoodwillRollForward</td>
</tr>
<tr>
<td style="padding-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>17
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6816713024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Working Capital Facilities (Details)<br> $ in Thousands, &#165; in Millions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 28, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 28, 2019 </div>
<div>JPY (&#165;)</div>
</th>
<th class="th">
<div>Dec. 30, 2017 </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_DebtDisclosureAbstract', window );"><strong>Debt 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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LettersOfCreditOutstandingAmount', window );">Letters of Credit Outstanding, Amount</a></td>
<td class="nump">$ 500<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_irbt_RevolvingLineOfCreditTextualAbstract', window );"><strong>Revolving Line of Credit (Textual) [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum amount available for borrowing under credit facility</a></td>
<td class="nump">$ 150,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 75,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_LineOfCreditFacilityInterestRateDescription', window );">Interest on loans under the credit facility</a></td>
<td class="text">at either (1) LIBOR plus a margin, currently equal to 1.0%, based on the Company's ratio of indebtedness to Adjusted EBITDA (the "Eurodollar Rate"), or (2) the lender's base rate.  <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_irbt_InterestRateAboveLIBORUnderConditionOne', window );">Interest rate above the LIBOR Daily Floating Rate or the Prime Rate of Lender under condition one</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">1.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_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo', window );">Interest Rate Above the Federal Fund Rate Under Condition Two</a></td>
<td class="nump">0.50%<span></span>
</td>
<td class="nump">0.50%<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_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo', window );">Interest rate above the LIBOR rate plus under condition two</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="nump">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_LineOfCredit', window );">Line of Credit Facility, Amount Outstanding</a></td>
<td class="nump">$ 0<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_irbt_Letterofcreditfacilitymaximumborrowing', window );">Letter of credit facility, maximum borrowing</a></td>
<td class="nump">$ 5,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_Lineofcreditmaximumamount', window );">Line of credit, maximum amount | &#165;</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 220.0<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_irbt_InterestRateAboveLIBORUnderConditionOne">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Interest rate above LIBOR under condition one.</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;">irbt_InterestRateAboveLIBORUnderConditionOne</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Interest rate above the Eurodollar rate Under Condition Two.</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;">irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Interest Rate Above the Federal Funds Rate Under Condition Two</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;">irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_Letterofcreditfacilitymaximumborrowing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Letter of credit facility, maximum borrowing</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;">irbt_Letterofcreditfacilitymaximumborrowing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_Lineofcreditmaximumamount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of credit, maximum 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;">irbt_Lineofcreditmaximumamount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_RevolvingLineOfCreditTextualAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Revolving Line of Credit.</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;">irbt_RevolvingLineOfCreditTextualAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_LettersOfCreditOutstandingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the contingent obligation under letters of credit outstanding as of the reporting 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_LettersOfCreditOutstandingAmount</td>
</tr>
<tr>
<td style="padding-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_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&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_LineOfCredit</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityInterestRateDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Description of the interest rate for the amounts borrowed under the credit facility, including the terms and the method for determining the interest rate (for example, fixed or variable, LIBOR plus a percentage, increasing rate, timing of interest rate resets, remarketing provisions).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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(b),22(b))<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_LineOfCreditFacilityInterestRateDescription</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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(b),22(b))<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_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-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>18
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822843472">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies Income taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_irbt_IncometaxesAbstract', window );"><strong>Income taxes [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">$ 3,826<span></span>
</td>
<td class="nump">$ 1,148<span></span>
</td>
<td class="nump">$ 800<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_IncometaxesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Income taxes [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;">irbt_IncometaxesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-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_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817143536">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>- Short Term Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_AvailableForSaleSecuritiesAbstract', window );"><strong>Components of available for sale securities</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_AvailableForSaleSecuritiesAmortizedCost', window );">Total short term investments</a></td>
<td class="nump">$ 17,016<span></span>
</td>
<td class="nump">$ 32,035<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesCurrent', window );">Total short term investments, Fair Market Value</a></td>
<td class="nump">17,032<span></span>
</td>
<td class="nump">31,605<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_FinancialInstrumentAxis=us-gaap_BondsMember', window );">Corporate and government 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_AvailableForSaleSecuritiesAbstract', window );"><strong>Components of available for sale securities</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_AvailableForSaleSecuritiesAmortizedCost', window );">Total short term investments</a></td>
<td class="nump">17,016<span></span>
</td>
<td class="nump">30,035<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesCurrent', window );">Total short term investments, Fair Market Value</a></td>
<td class="nump">17,032<span></span>
</td>
<td class="nump">29,605<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_FinancialInstrumentAxis=us-gaap_ConvertibleDebtMember', window );">Convertible note</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_AvailableForSaleSecuritiesAbstract', window );"><strong>Components of available for sale securities</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_AvailableForSaleSecuritiesAmortizedCost', window );">Total short term investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,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_AvailableForSaleSecuritiesCurrent', window );">Total short term investments, Fair Market Value</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 2,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_AvailableForSaleSecuritiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AvailableForSaleSecuritiesAbstract</td>
</tr>
<tr>
<td style="padding-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_AvailableForSaleSecuritiesAmortizedCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and equity 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>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_AvailableForSaleSecuritiesAmortizedCost</td>
</tr>
<tr>
<td style="padding-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_AvailableForSaleSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 trading securities nor held-to-maturity securities and intended be sold or mature 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>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_AvailableForSaleSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-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_FinancialInstrumentAxis=us-gaap_BondsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FinancialInstrumentAxis=us-gaap_BondsMember</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_FinancialInstrumentAxis=us-gaap_ConvertibleDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FinancialInstrumentAxis=us-gaap_ConvertibleDebtMember</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>21
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813641408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies 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_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Activity related to the warranty accrual</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Activity related to the warranty accrual was as follows (in thousands):</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>11,964</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>11,264</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>8,464</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Liability assumed (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,186</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,091</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,798</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,591</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Warranty usage</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(12,199</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(10,098</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(7,977</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,856</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,964</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,264</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;__________________________________</span></div><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(1) </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Warranty assumed as part of the acquisition of the iRobot-related distribution business of SODC.</span></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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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>23
<FILENAME>R87.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6814249296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Quarterly Information (Unaudited) (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Sep. 28, 2019</div></th>
<th class="th"><div>Jun. 29, 2019</div></th>
<th class="th"><div>Mar. 30, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Sep. 29, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information 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>
<td class="text">&#160;<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_Revenues', window );">Revenue</a></td>
<td class="nump">$ 426,778<span></span>
</td>
<td class="nump">$ 289,399<span></span>
</td>
<td class="nump">$ 260,172<span></span>
</td>
<td class="nump">$ 237,661<span></span>
</td>
<td class="nump">$ 384,665<span></span>
</td>
<td class="nump">$ 264,534<span></span>
</td>
<td class="nump">$ 226,317<span></span>
</td>
<td class="nump">$ 217,068<span></span>
</td>
<td class="nump">$ 1,214,010<span></span>
</td>
<td class="nump">$ 1,092,584<span></span>
</td>
<td class="nump">$ 883,911<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SelectedQuarterlyFinancialInformationAbstract', window );"><strong>Details of Quarterly Information (Unaudited)</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>
</tr>
<tr class="ro">
<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 profit</a></td>
<td class="nump">169,370<span></span>
</td>
<td class="nump">136,841<span></span>
</td>
<td class="nump">118,170<span></span>
</td>
<td class="nump">119,546<span></span>
</td>
<td class="nump">186,511<span></span>
</td>
<td class="nump">135,206<span></span>
</td>
<td class="nump">117,926<span></span>
</td>
<td class="nump">115,785<span></span>
</td>
<td class="nump">543,927<span></span>
</td>
<td class="nump">555,428<span></span>
</td>
<td class="nump">433,159<span></span>
</td>
</tr>
<tr class="re">
<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">$ 20,041<span></span>
</td>
<td class="nump">$ 35,532<span></span>
</td>
<td class="nump">$ 7,207<span></span>
</td>
<td class="nump">$ 22,520<span></span>
</td>
<td class="nump">$ 25,191<span></span>
</td>
<td class="nump">$ 31,929<span></span>
</td>
<td class="nump">$ 10,471<span></span>
</td>
<td class="nump">$ 20,401<span></span>
</td>
<td class="nump">$ 85,300<span></span>
</td>
<td class="nump">$ 87,992<span></span>
</td>
<td class="nump">$ 50,964<span></span>
</td>
</tr>
<tr class="ro">
<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</a></td>
<td class="nump">$ 0.70<span></span>
</td>
<td class="nump">$ 1.24<span></span>
</td>
<td class="nump">$ 0.25<span></span>
</td>
<td class="nump">$ 0.78<span></span>
</td>
<td class="nump">$ 0.88<span></span>
</td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 0.37<span></span>
</td>
<td class="nump">$ 0.71<span></span>
</td>
<td class="nump">$ 2.97<span></span>
</td>
<td class="nump">$ 3.07<span></span>
</td>
<td class="nump">$ 1.77<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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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_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_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-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_SelectedQuarterlyFinancialInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SelectedQuarterlyFinancialInformationAbstract</td>
</tr>
<tr>
<td style="padding-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>24
<FILENAME>R77.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813684896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies 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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasesRentExpenseNet', window );">Rental expense under operating leases</a></td>
<td class="nump">$ 12,873<span></span>
</td>
<td class="nump">$ 12,900<span></span>
</td>
<td class="nump">$ 8,900<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract', window );"><strong>Summary of future minimum rental payments under operating leases</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_ContractualObligation', window );">Contractual Obligation</a></td>
<td class="nump">$ 124,400<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_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ContractualObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 contractual obligation, including but not limited to, long-term debt, capital lease obligations, operating lease obligations, purchase obligations, and other commitments.</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_ContractualObligation</td>
</tr>
<tr>
<td style="padding-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_OperatingLeasesFutureMinimumPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OperatingLeasesFutureMinimumPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeasesRentExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Rental expense for the reporting period incurred under operating leases, including minimum and any contingent rent expense, net of related sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41499-112717<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesRentExpenseNet</td>
</tr>
<tr>
<td style="padding-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>25
<FILENAME>R73.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6826690096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation - Stock Options Assumptions (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Options, exercises in period, intrinsic value</a></td>
<td class="nump">$ 8.9<span></span>
</td>
<td class="nump">$ 14.9<span></span>
</td>
<td class="nump">$ 21.8<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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue</td>
</tr>
<tr>
<td style="padding-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>26
<FILENAME>R83.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823320032">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Income Taxes - Net Deferred Tax Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_DeferredTaxAssetsNetOfValuationAllowanceAbstract', window );"><strong>Deferred tax assets</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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances', window );">Revenue reserves</a></td>
<td class="nump">$ 21,355<span></span>
</td>
<td class="nump">$ 17,420<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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther', window );">Accruals and other liabilities</a></td>
<td class="nump">8,225<span></span>
</td>
<td class="nump">7,844<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_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities', window );">Operating lease liabilities</a></td>
<td class="nump">14,117<span></span>
</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_DeferredTaxAssetsTaxCreditCarryforwards', window );">Tax credits and net operating loss carryforwards</a></td>
<td class="nump">8,814<span></span>
</td>
<td class="nump">7,781<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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost', window );">Stock-based compensation</a></td>
<td class="nump">4,981<span></span>
</td>
<td class="nump">4,975<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_DeferredTaxAssetsOther', window );">Other</a></td>
<td class="nump">5,068<span></span>
</td>
<td class="nump">4,087<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_DeferredTaxAssetsGross', window );">Gross deferred tax assets</a></td>
<td class="nump">62,560<span></span>
</td>
<td class="nump">42,107<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_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="num">(3,826)<span></span>
</td>
<td class="num">(1,148)<span></span>
</td>
<td class="num">$ (800)<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_DeferredTaxAssetsNet', window );">Total deferred tax assets</a></td>
<td class="nump">58,734<span></span>
</td>
<td class="nump">40,959<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_DeferredTaxLiabilitiesAbstract', window );"><strong>Deferred tax liabilities</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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Intangible assets</a></td>
<td class="nump">3,838<span></span>
</td>
<td class="nump">7,317<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_DeferredTaxLiabilitiesLeasingArrangements', window );">Operating lease right-of-use assets</a></td>
<td class="nump">13,249<span></span>
</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_DeferredTaxLiabilitiesOther', window );">Other</a></td>
<td class="nump">768<span></span>
</td>
<td class="nump">668<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_DeferredIncomeTaxLiabilities', window );">Total deferred tax liabilities</a></td>
<td class="nump">17,855<span></span>
</td>
<td class="nump">7,985<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_DeferredTaxAssetsLiabilitiesNet', window );">Net deferred tax assets</a></td>
<td class="nump">$ 40,879<span></span>
</td>
<td class="nump">$ 32,974<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_irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Tax Assets, Lease Liabilities</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;">irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_DeferredIncomeTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax liability attributable to taxable temporary differences.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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(26)(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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(15)(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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(26)(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-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_DeferredIncomeTaxLiabilities</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsGross</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxAssetsLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b),(c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-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_DeferredTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsNetOfValuationAllowanceAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DeferredTaxAssetsNetOfValuationAllowanceAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-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_DeferredTaxAssetsOther</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsTaxCreditCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32559-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-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_DeferredTaxAssetsTaxCreditCarryforwards</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-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_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from reserves and accruals, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from estimated returns and sales allowances.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-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_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DeferredTaxLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax liability attributable to taxable temporary differences from intangible assets other than goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesLeasingArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax liability attributable to taxable temporary differences from leasing arrangements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredTaxLiabilitiesLeasingArrangements</td>
</tr>
<tr>
<td style="padding-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_DeferredTaxLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax liability attributable to taxable temporary differences 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 25<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=117330534&amp;loc=d3e28680-109314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32632-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32621-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_DeferredTaxLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-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>27
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836904928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>- Net Income Per Share (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Sep. 28, 2019</div></th>
<th class="th"><div>Jun. 29, 2019</div></th>
<th class="th"><div>Mar. 30, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Sep. 29, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_EarningsPerShareBasicAndDilutedAbstract', window );"><strong>Basic and Diluted Net Income Per 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>
<td class="text">&#160;<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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 20,041<span></span>
</td>
<td class="nump">$ 35,532<span></span>
</td>
<td class="nump">$ 7,207<span></span>
</td>
<td class="nump">$ 22,520<span></span>
</td>
<td class="nump">$ 25,191<span></span>
</td>
<td class="nump">$ 31,929<span></span>
</td>
<td class="nump">$ 10,471<span></span>
</td>
<td class="nump">$ 20,401<span></span>
</td>
<td class="nump">$ 85,300<span></span>
</td>
<td class="nump">$ 87,992<span></span>
</td>
<td class="nump">$ 50,964<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted-average shares outstanding</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="nump">28,097<span></span>
</td>
<td class="nump">27,692<span></span>
</td>
<td class="nump">27,611<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Dilutive effect of employee stock 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">&#160;<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">638<span></span>
</td>
<td class="nump">948<span></span>
</td>
<td class="nump">1,142<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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted-average shares outstanding</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="nump">28,735<span></span>
</td>
<td class="nump">28,640<span></span>
</td>
<td class="nump">28,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_EarningsPerShareBasic', window );">Basic</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="nump">$ 3.04<span></span>
</td>
<td class="nump">$ 3.18<span></span>
</td>
<td class="nump">$ 1.85<span></span>
</td>
</tr>
<tr class="re">
<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</a></td>
<td class="nump">$ 0.70<span></span>
</td>
<td class="nump">$ 1.24<span></span>
</td>
<td class="nump">$ 0.25<span></span>
</td>
<td class="nump">$ 0.78<span></span>
</td>
<td class="nump">$ 0.88<span></span>
</td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 0.37<span></span>
</td>
<td class="nump">$ 0.71<span></span>
</td>
<td class="nump">$ 2.97<span></span>
</td>
<td class="nump">$ 3.07<span></span>
</td>
<td class="nump">$ 1.77<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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 per each share of common stock or unit 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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 7: http://www.xbrl.org/2003/role/disclosureRef<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=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-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_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_EarningsPerShareBasicAndDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_EarningsPerShareBasicAndDilutedAbstract</td>
</tr>
<tr>
<td style="padding-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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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_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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=117326831&amp;loc=d3e1505-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=117326831&amp;loc=d3e1448-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_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>28
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6814206272">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition Significant Judgments (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_RevenueRecognitionAndDeferredRevenueAbstract', window );"><strong>Revenue Recognition and Deferred Revenue [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_Refundliabilityproductreturns', window );">Refund liability, product returns</a></td>
<td class="nump">$ 55.2<span></span>
</td>
<td class="nump">$ 53.9<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_irbt_Refundliabilityothercreditsandincentives', window );">Refund liability, other credits and incentives</a></td>
<td class="nump">$ 134.0<span></span>
</td>
<td class="nump">$ 97.7<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_Refundliabilityothercreditsandincentives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Refund liability, other credits and incentives</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;">irbt_Refundliabilityothercreditsandincentives</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_Refundliabilityproductreturns">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Refund liability, product returns</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;">irbt_Refundliabilityproductreturns</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_RevenueRecognitionAndDeferredRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueRecognitionAndDeferredRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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>29
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6837085072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Sales On Demand Corporation Acquisition (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Oct. 02, 2017</div></th>
<th class="th"><div>Apr. 03, 2017</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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>
<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_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 118,732<span></span>
</td>
<td class="nump">$ 118,896<span></span>
</td>
<td class="nump">$ 121,440<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount', window );">Gain on business acquisition</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 2,243<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=irbt_SalesOnDemandCorporationMember', window );">Sales On Demand Corporation</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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Payments to Acquire Businesses, Gross</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">16,649<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 125<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable, net (1)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,496)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventory</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,290<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets', window );">Deferred tax assets, net</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">409<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_Goodwill', window );">Goodwill</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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Intangible assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,640<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="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill', window );">Total assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">24,033<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities', window );">Accrued expenses and other current liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(4,450)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other liabilities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(691)<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="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities', window );">Total liabilities assumed</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,141)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Net assets acquired</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,892<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_BusinessCombinationBargainPurchaseGainRecognizedAmount', window );">Gain on business acquisition</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">$ 2,243<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,640<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,065<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="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=irbt_SalesOnDemandCorporationMember', window );">Sales On Demand Corporation | Customer relationships</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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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>
<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">13 years<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,490<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="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=irbt_SalesOnDemandCorporationMember', window );">Sales On Demand Corporation | Reacquired distribution rights</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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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>
<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">9 months<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,150<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="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=irbt_RobopolisMember', window );">Robopolis</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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Payments to Acquire Businesses, Gross</a></td>
<td class="nump">$ 169,400<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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>
<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="nump">37,981<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable, net (1)</a></td>
<td class="nump">21,426<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventory</a></td>
<td class="nump">36,304<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_Goodwill', window );">Goodwill</a></td>
<td class="nump">80,419<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Intangible assets</a></td>
<td class="nump">36,597<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="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill', window );">Total assets</a></td>
<td class="nump">215,183<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other liabilities</a></td>
<td class="num">(2,138)<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="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities', window );">Total liabilities assumed</a></td>
<td class="num">(45,769)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Net assets acquired</a></td>
<td class="nump">169,414<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="nump">36,597<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="nump">$ 2,456<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="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=irbt_RobopolisMember', window );">Robopolis | Customer relationships</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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>
<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">14 years<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="nump">$ 7,029<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="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=irbt_RobopolisMember', window );">Robopolis | Reacquired distribution rights</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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>
<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">2 years 3 months<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="nump">$ 29,296<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_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Including Goodwill</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;">irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationBargainPurchaseGainRecognizedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>In a business combination in which the amount of net identifiable assets acquired and liabilities assumed exceeds the aggregate consideration transferred or to be transferred (as defined), this element represents the amount of gain recognized 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6571-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6387-128476<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6396-128476<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6527-128477<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6393-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_BusinessCombinationBargainPurchaseGainRecognizedAmount</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, acquired at the acquisition date. 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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax asset attributable to deductible temporary differences and carryforwards acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=116821951&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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 identifiable intangible assets recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 inventory recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-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_FinitelivedIntangibleAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<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_FinitelivedIntangibleAssetsAcquired1</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionAxis=irbt_SalesOnDemandCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=irbt_SalesOnDemandCorporationMember</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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CustomerRelationshipsMember</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_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_BusinessAcquisitionAxis=irbt_RobopolisMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=irbt_RobopolisMember</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>30
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6816771392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements Convertible Note (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_ConvertibleDebtTableTextBlock', window );">Convertible Debt [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;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"/></tr><tr><td style="width:81%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Conversion of convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,000</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ConvertibleDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 borrowings which can be exchanged for a specified number of another security at the option of the issuer or the holder. Disclosures include, but are not limited to, principal amount, amortized premium or discount, and amount of liability and equity components.</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_ConvertibleDebtTableTextBlock</td>
</tr>
<tr>
<td style="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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813262960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and other intangible assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_ScheduleOfGoodwillTextBlock', window );">Schedule of goodwill</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the activity in the carrying amount of goodwill for fiscal years 2019 and 2018 (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:78%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>121,440</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Purchase accounting adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>830</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Effect of foreign currency translation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,374</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>118,896</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,050</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Effect of foreign currency translation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,214</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>118,732</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Other intangible assets</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets consisted of the following (in thousands):</span></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="24"/></tr><tr><td style="width:39%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Accumulated</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Accumulated</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Net</span></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;"><span style="font-family:inherit;font-size:10pt;">Completed technology</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>28,100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>24,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3,495</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>26,900</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>21,607</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>5,293</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tradename</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,095</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,302</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,793</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,291</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,365</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,926</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,680</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,680</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,499</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>23,598</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,901</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Non-competition agreements</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>256</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>192</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>64</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>263</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>110</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>153</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,231</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>58,879</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,352</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,053</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>46,780</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>24,273</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Estimated future amortization expense related to current intangible assets</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The estimated future amortization expense related to current intangible assets in each of the five succeeding fiscal years is expected to be as follows (in thousands):</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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.61013645224172%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Operating Expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">2020</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,140</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,000</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,140</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2021</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,140</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,921</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2022</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>915</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,696</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2023</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>240</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,021</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2024</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>60</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>841</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Thereafter</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,733</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,733</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,495</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,857</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,352</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 goodwill by reportable segment and in total which includes a rollforward schedule.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13854-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="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://fasb.org/us-gaap/role/ref/legacyRef<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>32
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836475680">
<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>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_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">$ 239,392<span></span>
</td>
<td class="nump">$ 130,373<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesCurrent', window );">Short term investments</a></td>
<td class="nump">17,032<span></span>
</td>
<td class="nump">31,605<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsAndOtherReceivablesNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">146,161<span></span>
</td>
<td class="nump">162,166<span></span>
</td>
</tr>
<tr class="re">
<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 );">Inventory</a></td>
<td class="nump">157,347<span></span>
</td>
<td class="nump">164,633<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">34,285<span></span>
</td>
<td class="nump">25,660<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_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">594,217<span></span>
</td>
<td class="nump">514,437<span></span>
</td>
</tr>
<tr class="ro">
<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 and equipment, net</a></td>
<td class="nump">75,988<span></span>
</td>
<td class="nump">57,026<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">47,478<span></span>
</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_DeferredIncomeTaxAssetsNet', window );">Deferred tax assets</a></td>
<td class="nump">41,791<span></span>
</td>
<td class="nump">36,979<span></span>
</td>
</tr>
<tr class="re">
<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">118,732<span></span>
</td>
<td class="nump">118,896<span></span>
</td>
</tr>
<tr class="ro">
<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">12,352<span></span>
</td>
<td class="nump">24,273<span></span>
</td>
</tr>
<tr class="re">
<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">30,195<span></span>
</td>
<td class="nump">15,350<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_Assets', window );">Total assets</a></td>
<td class="nump">920,753<span></span>
</td>
<td class="nump">766,961<span></span>
</td>
</tr>
<tr class="re">
<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="ro">
<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">116,185<span></span>
</td>
<td class="nump">136,742<span></span>
</td>
</tr>
<tr class="re">
<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">81,768<span></span>
</td>
<td class="nump">71,259<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredRevenueCurrent', window );">Deferred revenue and customer advances</a></td>
<td class="nump">4,549<span></span>
</td>
<td class="nump">5,756<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">202,502<span></span>
</td>
<td class="nump">213,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_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities</a></td>
<td class="nump">54,928<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_DeferredIncomeTaxLiabilitiesNet', window );">Deferred tax liabilities</a></td>
<td class="nump">912<span></span>
</td>
<td class="nump">4,005<span></span>
</td>
</tr>
<tr class="ro">
<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 long-term liabilities</a></td>
<td class="nump">10,342<span></span>
</td>
<td class="nump">13,877<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_LiabilitiesNoncurrent', window );">Total long-term liabilities</a></td>
<td class="nump">66,182<span></span>
</td>
<td class="nump">17,882<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">268,684<span></span>
</td>
<td class="nump">231,639<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (Note 15)</a></td>
<td class="text"> <span></span>
</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_PreferredStockValue', window );">Preferred stock, 5,000 shares authorized and none outstanding</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_CommonStockValue', window );">Common stock, $0.01 par value; 100,000 shares authorized; 28,352 and 27,788 shares issued and outstanding, respectively</a></td>
<td class="nump">284<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_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">196,455<span></span>
</td>
<td class="nump">172,771<span></span>
</td>
</tr>
<tr class="re">
<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">452,321<span></span>
</td>
<td class="nump">367,021<span></span>
</td>
</tr>
<tr class="ro">
<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 income (loss)</a></td>
<td class="nump">3,009<span></span>
</td>
<td class="num">(4,748)<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_StockholdersEquity', window );">Total stockholders&#8217; equity</a></td>
<td class="nump">652,069<span></span>
</td>
<td class="nump">535,322<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_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders&#8217; equity</a></td>
<td class="nump">$ 920,753<span></span>
</td>
<td class="nump">$ 766,961<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_AccountsAndOtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allowance, receivable from customers, clients, or other third-parties, and receivables classified as other 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_AccountsAndOtherReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&amp;loc=SL7669686-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&amp;loc=d3e681-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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=119400593&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=118951113&amp;loc=d3e6801-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118951113&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_AvailableForSaleSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 trading securities nor held-to-maturity securities and intended be sold or mature 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>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_AvailableForSaleSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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.25)<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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),19)<br> -URI http://asc.fasb.org/extlink&amp;oid=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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.17)<br> -URI http://asc.fasb.org/extlink&amp;oid=6876686&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118942415&amp;loc=d3e14326-108349<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-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_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_CommonStockValue</td>
</tr>
<tr>
<td style="padding-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_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, 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://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=116821951&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_DeferredRevenueCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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(5))<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_DeferredRevenueCurrent</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<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=118951113&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=116846819&amp;loc=d3e3927-108312<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_LiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 due after one year or beyond 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(26))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.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_LiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-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_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=119400593&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=119400593&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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_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://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>33
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836761968">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity - USD ($)<br> $ 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 (Accumulated Deficit)</div></th>
<th class="th"><div>Accumulated Other Comprehensive Income (Loss)</div></th>
</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, shares at Dec. 31, 2016</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27,238,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>
</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, 2016</a></td>
<td class="nump">$ 388,956<span></span>
</td>
<td class="nump">$ 272<span></span>
</td>
<td class="nump">$ 161,885<span></span>
</td>
<td class="nump">$ 226,950<span></span>
</td>
<td class="num">$ (151)<span></span>
</td>
</tr>
<tr class="re">
<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 [Roll Forward]</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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of common stock under employee stock plans</a></td>
<td class="nump">367,267<span></span>
</td>
<td class="nump">367,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>
</tr>
<tr class="re">
<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 employee stock plans</a></td>
<td class="nump">$ 10,573<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
<td class="nump">10,569<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_DeferredCompensationArrangementWithIndividualSharesIssued', window );">Conversion of deferred compensation</a></td>
<td class="nump">15,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="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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Vesting of restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">376,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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures', window );">Vesting of restricted stock units</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
<td class="num">(4)<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">19,751<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">19,751<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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(51,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>
</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_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount', window );">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</a></td>
<td class="num">(2,983)<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="num">(2,982)<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income</a></td>
<td class="nump">2,143<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,143<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_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation', window );">Directors' deferred compensation</a></td>
<td class="nump">65<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65<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">50,964<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">50,964<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 );">Ending balance, shares at Dec. 30, 2017</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27,945,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>
</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 Dec. 30, 2017</a></td>
<td class="nump">470,327<span></span>
</td>
<td class="nump">$ 279<span></span>
</td>
<td class="nump">190,067<span></span>
</td>
<td class="nump">277,989<span></span>
</td>
<td class="nump">1,992<span></span>
</td>
</tr>
<tr class="re">
<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 [Roll Forward]</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 );">Cumulative effect of a change in accounting principle related to adoption of ASC 606</a></td>
<td class="nump">$ 858<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">783<span></span>
</td>
<td class="nump">75<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of common stock under employee stock plans</a></td>
<td class="nump">239,830<span></span>
</td>
<td class="nump">285,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>
</tr>
<tr class="ro">
<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 employee stock plans</a></td>
<td class="nump">$ 10,366<span></span>
</td>
<td class="nump">$ 3<span></span>
</td>
<td class="nump">10,363<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Vesting of restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">408,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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures', window );">Vesting of restricted stock units</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 4<span></span>
</td>
<td class="num">(4)<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">25,804<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,804<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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(51,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>
</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_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount', window );">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</a></td>
<td class="num">(3,532)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(3,532)<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income</a></td>
<td class="num">(6,740)<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">(6,740)<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_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation', window );">Directors' deferred compensation</a></td>
<td class="nump">$ 65<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65<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_StockRepurchasedAndRetiredDuringPeriodShares', window );">Stock repurchases</a></td>
<td class="num">(798,794)<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_StockRepurchasedAndRetiredDuringPeriodValue', window );">Stock repurchases</a></td>
<td class="num">$ (50,000)<span></span>
</td>
<td class="num">$ (8)<span></span>
</td>
<td class="num">(49,992)<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">$ 87,992<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">87,992<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 );">Ending balance, shares at Dec. 29, 2018</a></td>
<td class="nump">27,788,272<span></span>
</td>
<td class="nump">27,788,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>
</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 Dec. 29, 2018</a></td>
<td class="nump">$ 535,322<span></span>
</td>
<td class="nump">$ 278<span></span>
</td>
<td class="nump">172,771<span></span>
</td>
<td class="nump">367,021<span></span>
</td>
<td class="num">(4,748)<span></span>
</td>
</tr>
<tr class="re">
<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 [Roll Forward]</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 );">Cumulative effect of a change in accounting principle related to adoption of ASC 606</a></td>
<td class="nump">$ 1,040<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,040<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_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of common stock under employee stock plans</a></td>
<td class="nump">127,024<span></span>
</td>
<td class="nump">187,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>
</tr>
<tr class="ro">
<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 employee stock plans</a></td>
<td class="nump">$ 7,147<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
<td class="nump">7,145<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures', window );">Vesting of restricted stock units</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">436,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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures', window );">Vesting of restricted stock units</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 5<span></span>
</td>
<td class="num">(5)<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation</a></td>
<td class="nump">23,744<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">23,744<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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">59,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>
</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_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount', window );">Stock withheld to cover tax withholdings requirements upon restricted stock vesting</a></td>
<td class="nump">7,277<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">7,276<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income</a></td>
<td class="nump">7,757<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">7,757<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_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation', window );">Directors' deferred compensation</a></td>
<td class="nump">76<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">76<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">$ 85,300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85,300<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 );">Ending balance, shares at Dec. 28, 2019</a></td>
<td class="nump">28,352,390<span></span>
</td>
<td class="nump">28,352,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>
</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 Dec. 28, 2019</a></td>
<td class="nump">$ 652,069<span></span>
</td>
<td class="nump">$ 284<span></span>
</td>
<td class="nump">$ 196,455<span></span>
</td>
<td class="nump">$ 452,321<span></span>
</td>
<td class="nump">$ 3,009<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Adjustments to additional paid in capital directors deferred compensation.</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;">irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 withheld to Cover tax withholding requirements Upon Vesting to restricted Stock Units.</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;">irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_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) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=118258462&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5047-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118258462&amp;loc=d3e11178-113907<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=116855982&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<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_DeferredCompensationArrangementWithIndividualSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 issued pursuant to the terms of a deferred compensation arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_DeferredCompensationArrangementWithIndividualSharesIssued</td>
</tr>
<tr>
<td style="padding-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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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_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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=108774443&amp;loc=SL4569643-111683<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=108774443&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_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_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 used to settle grantee's tax withholding obligation for award under share-based payment arrangement.</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_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 issued during the period related to Restricted Stock Awards, net of any shares forfeited.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&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_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_StockRepurchasedAndRetiredDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and retired 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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&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_StockRepurchasedAndRetiredDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-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_StockRepurchasedAndRetiredDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional 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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&amp;loc=d3e21463-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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_StockRepurchasedAndRetiredDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>34
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822834832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_irbt_OperatingLeaseCostAbstract', window );"><strong>Operating Lease Cost [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_LeaseCostTableTextBlock', window );">Lease, Cost [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of lease expense were as follows (in thousands):</span></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="4"/></tr><tr><td style="width:79%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>8,777</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Variable lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,096</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,873</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Rental expense under operating leases for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;"> amounted to </span><span style="font-family:inherit;font-size:10pt;"><span>$12.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$8.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><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_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock', window );">Schedule of Leases, Supplemental Cash Flow [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental cash flow information related to leases was as follows (in thousands):</span></div><div style="line-height:120%;text-align:center;padding-left: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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:79%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">Cash paid for amounts included in the measurement of lease liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating cash flows from operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>9,540</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Right-of-use assets obtained in exchange for lease obligations:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>53,227</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Maturities of operating lease liabilities were as follows as of&#160;December&#160;28, 2019&#160;(in thousands):</span></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="4"/></tr><tr><td style="width:79%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">2020</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>8,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2021</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,263</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2022</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,592</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2023</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,145</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2024</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,308</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Thereafter</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>34,957</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total minimum lease payments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>73,201</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: imputed interest</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,430</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Present value of future minimum lease payments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>61,771</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: current portion of operating lease liabilities (Note 9)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,843</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Long-term lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>54,928</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_OperatingLeaseCostAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Operating Lease Cost [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;">irbt_OperatingLeaseCostAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Schedule of Leases, Supplemental Cash Flow [Table Text Block]</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;">irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_LeaseCostTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCostTableTextBlock</td>
</tr>
<tr>
<td style="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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813571808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations (Notes)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [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_BusinessCombinationDisclosureTextBlock', window );">Business Combinations</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">5.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Business Combinations</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Acquisition of Robopolis</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In October 2017, the Company closed the acquisition of its largest European distributor, Robopolis SAS, a French company ("Robopolis"). The acquisition will better enable the Company to maintain its leadership position and grow its business in several Western European countries through direct control of pre- and post-sales market activities including sales, marketing, branding, channel relationships and customer service. The purchase price was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$169.4 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;in cash, net of acquired cash of </span><span style="font-family:inherit;font-size:10pt;"><span>$38.0 million</span></span><span style="font-family:inherit;font-size:10pt;">. The acquisition was a stock purchase. The results of operations for this acquisition have been included in the Company&#8217;s operating results since the acquisition date.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the final allocation of the purchase price (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>37,981</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>21,426</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36,304</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Goodwill</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>80,419</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36,597</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,456</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>215,183</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accounts payable</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(29,391</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,376</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(10,864</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,138</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total liabilities assumed</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(45,769</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>169,414</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:center;text-indent:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;padding-left:84px;text-indent:-12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(1) The accounts receivable balance includes reserves for product returns, discounts and promotions assumed as part of the acquisition.</span></div><div style="line-height:120%;text-align:left;padding-left:84px;text-indent:-12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:60%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Useful Life</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2.25 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>29,296</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14 years</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,029</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Non-competition agreements</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>272</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36,597</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Acquisition of Sales On Demand Corporation</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In April&#160;2017, the Company closed its acquisition of the iRobot-related distribution business of Sales On Demand Corporation ("SODC") for </span><span style="font-family:inherit;font-size:10pt;"><span>$16.6 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;in cash, equal to the book value of the acquired assets. &#160;The acquisition will better enable the Company to maintain its leadership position and accelerate the growth of its business in&#160;Japan&#160;through direct control of pre- and post-sales market activities including sales, marketing, branding, channel relationships and customer service. It also expands the Company's presence and customer outreach opportunities in&#160;Japan. The acquisition was a stock purchase. The results of operations for this acquisition have been included in the Company's operating results since the acquisition date. </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During 2017, the Company finalized the purchase price allocation and made measurement period adjustments to the provisional amounts reported as the estimated fair values of assets acquired. These measurement period adjustments resulted in a&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$2.2 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;non-taxable gain on business acquisition which represents the excess of the fair value of the net assets acquired over the purchase price. The gain on business acquisition was recorded within other income, net in the consolidated statements of income. The Company believes that the gain on business acquisition was due to the transaction not being subjected to a competitive bidding process and the purchase price being determined based on the net book value of the net assets acquired.</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-align:justify;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the final allocation of the purchase price (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:36px;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:94.7265625%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:88%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>125</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,496</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>18,290</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,065</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets, net</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>409</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Goodwill</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,640</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>24,033</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses and other current liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,450</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(691</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total liabilities assumed</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,141</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>18,892</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gain on business acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,243</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total purchase price</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>16,649</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;text-indent:36px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(1) The accounts receivable balance reflects reserves for product returns, discounts and promotions assumed as part of the acquisition. </span></div><div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">     </span><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="7"/></tr><tr><td style="width:55%;"/><td style="width:1%;"/><td style="width:22%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Useful Life</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>4,490</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9 months</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,150</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,640</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Pro Forma Results (Unaudited)</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows unaudited pro forma results of operations as if the Company had acquired Robopolis on January&#160;1, 2017 (in thousands, except per share amounts):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:81%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>901,612</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>51,887</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income per share:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Basic income per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.88</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted income per share</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.80</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has not furnished pro forma financial information relating to its acquisition of SODC in 2017 and an immaterial acquisition during the fiscal year 2019, because such information is not material, individually or in the aggregate, to its financial results. The unaudited pro forma results of operations are not necessarily indicative of the actual results that would have occurred had the transactions taken place at the beginning of the periods indicated.</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -URI http://asc.fasb.org/topic&amp;trid=2303972<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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>36
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822905312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock', window );">Accrued Expenses</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">9.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Accrued Expenses</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses consist of the following (in thousands):</span></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="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued warranty</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13,856</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,964</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued other compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,331</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,518</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued bonus</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,541</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>21,226</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued sales and other indirect taxes payable</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,440</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,397</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued direct fulfillment costs</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,582</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,372</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Current portion of operating lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,843</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued federal and state income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,378</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,797</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>81,768</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,259</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 accounts payable and accrued liabilities at the end of 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://fasb.org/us-gaap/role/ref/legacyRef<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),20,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_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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>37
<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>38
<FILENAME>R86.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838479312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Industry Segment, Geographic Information and Significant Customers (Details Textual) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Sep. 28, 2019</div></th>
<th class="th"><div>Jun. 29, 2019</div></th>
<th class="th"><div>Mar. 30, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Sep. 29, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">&#160;<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">Dec. 28,  2019<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_Revenues', window );">Revenue</a></td>
<td class="nump">$ 426,778<span></span>
</td>
<td class="nump">$ 289,399<span></span>
</td>
<td class="nump">$ 260,172<span></span>
</td>
<td class="nump">$ 237,661<span></span>
</td>
<td class="nump">$ 384,665<span></span>
</td>
<td class="nump">$ 264,534<span></span>
</td>
<td class="nump">$ 226,317<span></span>
</td>
<td class="nump">$ 217,068<span></span>
</td>
<td class="nump">$ 1,214,010<span></span>
</td>
<td class="nump">$ 1,092,584<span></span>
</td>
<td class="nump">$ 883,911<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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue | Amazon [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>
<td class="text">&#160;<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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</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="nump">21.30%<span></span>
</td>
<td class="nump">17.30%<span></span>
</td>
<td class="nump">13.50%<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_srt_StatementGeographicalAxis=us-gaap_NonUsMember', window );">Non-US [Member] | Geographic Concentration Risk | 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>
<td class="text">&#160;<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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</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="nump">50.30%<span></span>
</td>
<td class="nump">48.70%<span></span>
</td>
<td class="nump">48.80%<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_srt_StatementGeographicalAxis=us-gaap_DomesticDestinationMember', window );">Domestic Destination [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>
<td class="text">&#160;<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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">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>
<td class="text">&#160;<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">$ 603,618<span></span>
</td>
<td class="nump">$ 560,995<span></span>
</td>
<td class="nump">$ 452,563<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_srt_StatementGeographicalAxis=us-gaap_GeographicDistributionForeignMember', window );">Geographic Distribution, Foreign [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>
<td class="text">&#160;<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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems', window );"><strong>Revenues from External Customers and Long-Lived Assets [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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_Revenues', window );">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>
<td class="text">&#160;<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">$ 610,392<span></span>
</td>
<td class="nump">$ 531,589<span></span>
</td>
<td class="nump">$ 431,348<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems</td>
</tr>
<tr>
<td style="padding-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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</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_srt_MajorCustomersAxis=irbt_AmazonMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_MajorCustomersAxis=irbt_AmazonMember</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_srt_StatementGeographicalAxis=us-gaap_NonUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=us-gaap_NonUsMember</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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember</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_srt_StatementGeographicalAxis=us-gaap_DomesticDestinationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=us-gaap_DomesticDestinationMember</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_srt_StatementGeographicalAxis=us-gaap_GeographicDistributionForeignMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=us-gaap_GeographicDistributionForeignMember</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>39
<FILENAME>R76.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6815733824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Stock comp expense classification (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 23,744<span></span>
</td>
<td class="nump">$ 25,804<span></span>
</td>
<td class="nump">$ 19,751<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based Payment Arrangement, Noncash Expense</a></td>
<td class="nump">23,744<span></span>
</td>
<td class="nump">25,804<span></span>
</td>
<td class="nump">19,751<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_CostOfSalesMember', 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>
</tr>
<tr class="ro">
<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 );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">1,486<span></span>
</td>
<td class="nump">1,407<span></span>
</td>
<td class="nump">1,082<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 and Development Expense [Member]</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_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">9,186<span></span>
</td>
<td class="nump">7,494<span></span>
</td>
<td class="nump">5,009<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_SellingAndMarketingExpenseMember', window );">Selling and Marketing Expense [Member]</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_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">3,323<span></span>
</td>
<td class="nump">2,842<span></span>
</td>
<td class="nump">2,571<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_GeneralAndAdministrativeExpenseMember', window );">General and Administrative Expense [Member]</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_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">$ 9,749<span></span>
</td>
<td class="nump">$ 14,061<span></span>
</td>
<td class="nump">$ 11,089<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>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=115993241&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CostOfSalesMember</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_SellingAndMarketingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SellingAndMarketingExpenseMember</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R72.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838274944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation - Stock Options Activity (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,975<span></span>
</td>
</tr>
<tr 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">Dec. 28,  2019<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions', window );">Compensation not yet recognized, options</a></td>
<td class="nump">$ 400<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Summary of stock option plan activity</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Number of Shares, Beginning Balance</a></td>
<td class="nump">462,261<span></span>
</td>
<td class="nump">712,954<span></span>
</td>
<td class="nump">1,088,174<span></span>
</td>
</tr>
<tr class="re">
<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 );">Number of Shares, Exercised</a></td>
<td class="num">(127,024)<span></span>
</td>
<td class="num">(239,830)<span></span>
</td>
<td class="num">(367,267)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod', window );">Number of Shares, Canceled</a></td>
<td class="num">(12,329)<span></span>
</td>
<td class="num">(10,863)<span></span>
</td>
<td class="num">(18,928)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Number of Shares, Ending Balance</a></td>
<td class="nump">322,908<span></span>
</td>
<td class="nump">462,261<span></span>
</td>
<td class="nump">712,954<span></span>
</td>
</tr>
<tr class="ro">
<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>Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [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>
</tr>
<tr class="re">
<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 );">Weighted Average Exercise Price, Beginning Balance (in dollars per share)</a></td>
<td class="nump">$ 34.55<span></span>
</td>
<td class="nump">$ 34.34<span></span>
</td>
<td class="nump">$ 32.27<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted Average Exercise Price, Granted (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">57.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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercised (in dollars per share)</a></td>
<td class="nump">32.95<span></span>
</td>
<td class="nump">33.40<span></span>
</td>
<td class="nump">28.79<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Canceled (in dollars per share)</a></td>
<td class="nump">37.03<span></span>
</td>
<td class="nump">46.20<span></span>
</td>
<td class="nump">36.72<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Exercise Price, Ending Balance (in dollars per share)</a></td>
<td class="nump">$ 35.08<span></span>
</td>
<td class="nump">$ 34.55<span></span>
</td>
<td class="nump">$ 34.34<span></span>
</td>
</tr>
<tr class="ro">
<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>Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber', window );">Number of Shares, Vested and expected to vest</a></td>
<td class="nump">322,908<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Number of Shares, Exercisable</a></td>
<td class="nump">293,159<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Vested and expected to vest (in dollars per share)</a></td>
<td class="nump">$ 35.08<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Weighted Average Exercise Price, Exercisable (in dollars per share)</a></td>
<td class="nump">$ 34.30<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Weighted Average Remaining Contractual Term, Vested and expected to vest</a></td>
<td class="text">2 years 5 months 19 days<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Weighted Average Remaining Contractual Term, Ending Balance</a></td>
<td class="text">2 years 5 months 19 days<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Weighted Average Remaining Contractual Term, Exercisable</a></td>
<td class="text">2 years 4 months 6 days<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Aggregate Intrinsic Value, Ending Balance</a></td>
<td class="nump">$ 5,650<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Aggregate Intrinsic Value, Vested and expected to vest</a></td>
<td class="nump">5,650<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1', window );">Aggregate Intrinsic Value, Exercisable</a></td>
<td class="nump">$ 5,320<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_SharePrice', window );">Share price (in dollars per share)</a></td>
<td class="nump">$ 50.20<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_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>
</tr>
<tr class="re">
<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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average remaining recognition period</a></td>
<td class="text">7 months 9 days<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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option | Minimum</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_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>
</tr>
<tr class="re">
<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 );">Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period</a></td>
<td class="text">4 years<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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</a></td>
<td class="text">5 years<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_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option | Maximum</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_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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod', window );">Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period</a></td>
<td class="text">10 years<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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward', window );">Share-based Compensation Arrangement by Share-based Payment Award, Terms of Award</a></td>
<td class="text">four year<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average remaining recognition period</a></td>
<td class="text">2 years 6 months 10 days<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_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_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents 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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost to be recognized for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions</td>
</tr>
<tr>
<td style="padding-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_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 over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Gross 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>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 options outstanding that can 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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Description of terms of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward</td>
</tr>
<tr>
<td style="padding-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_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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 could have acquired the underlying shares with respect to stock options that were terminated.</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_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="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_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</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_SharePrice</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from grant date that an equity-based award expires, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&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_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>
<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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MinimumMember</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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MaximumMember</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_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RestrictedStockUnitsRSUMember</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>41
<FILENAME>R82.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817557184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Effective Income Tax Reconciliation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_IncomeTaxReconciliationNondeductibleExpenseAbstract', window );"><strong>Reconciliation of the expected tax (benefit) expense</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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Statutory federal income tax</a></td>
<td class="nump">$ 20,755<span></span>
</td>
<td class="nump">$ 22,812<span></span>
</td>
<td class="nump">$ 26,728<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes', window );">State taxes (net of federal benefit)</a></td>
<td class="nump">3,999<span></span>
</td>
<td class="nump">4,312<span></span>
</td>
<td class="nump">2,089<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxCredits', window );">Federal and state credits</a></td>
<td class="num">(8,152)<span></span>
</td>
<td class="num">(5,638)<span></span>
</td>
<td class="num">(4,486)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities', window );">Domestic production activities deduction</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(1,528)<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_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount', window );">Excess tax benefits relating to stock-based compensation</a></td>
<td class="num">(6,468)<span></span>
</td>
<td class="num">(6,529)<span></span>
</td>
<td class="num">(11,709)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount', window );">Tax Cuts and Jobs Act of 2017</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,127<span></span>
</td>
<td class="nump">11,861<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_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction', window );">Foreign-derived intangible income deduction</a></td>
<td class="num">(4,180)<span></span>
</td>
<td class="num">(2,678)<span></span>
</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_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring', window );">EMEA business restructuring</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,292<span></span>
</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_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation', window );">Executive compensation</a></td>
<td class="nump">2,081<span></span>
</td>
<td class="nump">745<span></span>
</td>
<td class="nump">1,354<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_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings', window );">Tax impact of foreign earnings</a></td>
<td class="nump">1,986<span></span>
</td>
<td class="nump">1,336<span></span>
</td>
<td class="num">(636)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in valuation allowance</a></td>
<td class="nump">2,678<span></span>
</td>
<td class="nump">348<span></span>
</td>
<td class="nump">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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions', window );">Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions</a></td>
<td class="num">(768)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(523)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Other</a></td>
<td class="nump">834<span></span>
</td>
<td class="nump">1,503<span></span>
</td>
<td class="nump">929<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_IncomeTaxReconciliationNondeductibleExpense', window );">Total expected tax (benefits) expenses</a></td>
<td class="nump">$ 13,533<span></span>
</td>
<td class="nump">$ 20,630<span></span>
</td>
<td class="nump">$ 25,402<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, EMEA business restructuring</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;">irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Executive Compensation</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;">irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Foreign-derived intangible income deduction</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;">irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Nondeductible Expense, Excess Tax Benefits Related To Share-based Compensation, 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;">irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Impact of Foreign Earnings</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;">irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operations, attributable to Tax Cuts and Jobs Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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 increase (decrease) in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32123-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_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationDeductionsQualifiedProductionActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 difference between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to deduction for qualified production activity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_IncomeTaxReconciliationDeductionsQualifiedProductionActivities</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 income tax expense or benefit for the period computed by applying the 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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationNondeductibleExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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 nondeductible expenses.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_IncomeTaxReconciliationNondeductibleExpense</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationNondeductibleExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncomeTaxReconciliationNondeductibleExpenseAbstract</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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://fasb.org/us-gaap/role/ref/legacyRef<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_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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 state and local income 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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_IncomeTaxReconciliationStateAndLocalIncomeTaxes</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxReconciliationTaxCredits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_IncomeTaxReconciliationTaxCredits</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-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>42
<FILENAME>irbt-12282019x10k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2017-01-31"
  xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31"
  xmlns:irbt="http://www.irobot.com/20191228"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2019-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2019-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="irbt-20191228.xsd" xlink:type="simple"/>
    <context id="FD2019Q4YTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="I2020Q1SharesOutstanding">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2020-01-31</instant>
        </period>
    </context>
    <context id="FI2019Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2017Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2016Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:BondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:BondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:ConvertibleDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforothercreditsandincentivesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">irbt:AllowanceforproductreturnsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:AmazonMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:TwoCustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:TwoCustomersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:AmazonMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">irbt:AmazonMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ToolsDiesAndMoldsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ToolsDiesAndMoldsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">irbt:AllOtherRegionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:EMEAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_StatementGeographicalAxis_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_StatementGeographicalAxis_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">irbt:AllOtherRegionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-04-03</startDate>
            <endDate>2017-04-03</endDate>
        </period>
    </context>
    <context id="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-04-03</startDate>
            <endDate>2017-04-03</endDate>
        </period>
    </context>
    <context id="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-04-03</startDate>
            <endDate>2017-04-03</endDate>
        </period>
    </context>
    <context id="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-10-02</instant>
        </period>
    </context>
    <context id="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-04-03</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:SalesOnDemandCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-10-02</startDate>
            <endDate>2017-10-02</endDate>
        </period>
    </context>
    <context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-10-02</startDate>
            <endDate>2017-10-02</endDate>
        </period>
    </context>
    <context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-10-02</startDate>
            <endDate>2017-10-02</endDate>
        </period>
    </context>
    <context id="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">irbt:RobopolisMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-10-02</startDate>
            <endDate>2017-10-02</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdsAndLeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareAndSoftwareDevelopmentCostsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:ComputerEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OperatingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentedTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DistributionRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:NoncompeteAgreementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:PatentedTechnologyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:OtherNonoperatingIncomeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccruedLiabilitiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentsGainLossByHedgingRelationshipAxis">us-gaap:CashFlowHedgingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:DesignatedAsHedgingInstrumentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DerivativeInstrumentRiskAxis">us-gaap:ForeignExchangeForwardMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="I2018Q1RepurchaseDate">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2018-02-27</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="D2017Q2May">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2017-05-01</startDate>
            <endDate>2017-05-31</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="I2017Q2May">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2017-05-31</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="I2018Q2SD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <instant>2018-05-23</instant>
        </period>
    </context>
    <context id="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-12-30</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2016-12-31</instant>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2017Q4QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2017-10-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FI2018Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-29</instant>
        </period>
    </context>
    <context id="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:StateAndLocalJurisdictionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-28</instant>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:DomesticDestinationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:GeographicDistributionForeignMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:GeographicDistributionForeignMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:DomesticDestinationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:DomesticDestinationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:GeographicDistributionForeignMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-01-01</startDate>
            <endDate>2017-12-30</endDate>
        </period>
    </context>
    <context id="FD2019Q3QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2019-06-30</startDate>
            <endDate>2019-09-28</endDate>
        </period>
    </context>
    <context id="FD2018Q4QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2018-09-30</startDate>
            <endDate>2018-12-29</endDate>
        </period>
    </context>
    <context id="FD2019Q4QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2019-09-29</startDate>
            <endDate>2019-12-28</endDate>
        </period>
    </context>
    <context id="FD2018Q3QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2018-07-01</startDate>
            <endDate>2018-09-29</endDate>
        </period>
    </context>
    <context id="FD2018Q2QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2018-04-01</startDate>
            <endDate>2018-06-30</endDate>
        </period>
    </context>
    <context id="FD2019Q1QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2018-12-30</startDate>
            <endDate>2019-03-30</endDate>
        </period>
    </context>
    <context id="FD2019Q2QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2019-03-31</startDate>
            <endDate>2019-06-29</endDate>
        </period>
    </context>
    <context id="FD2018Q1QTD">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001159167</identifier>
        </entity>
        <period>
            <startDate>2017-12-31</startDate>
            <endDate>2018-03-31</endDate>
        </period>
    </context>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="jpy">
        <measure>iso4217:JPY</measure>
    </unit>
    <unit id="vote">
        <measure>irbt:vote</measure>
    </unit>
    <unit id="plan">
        <measure>irbt:plan</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="FD2019Q4YTD"
      id="Fact-439A13501D1AE667BAE21ECF8BFF49EF-wk-Fact-439A13501D1AE667BAE21ECF8BFF49EF">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate
      contextRef="FD2019Q4YTD"
      id="Fact-164F651C2ED9A9CD835B1ECF8C01FFBA-wk-Fact-164F651C2ED9A9CD835B1ECF8C01FFBA">--12-28</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalPeriodFocus
      contextRef="FD2019Q4YTD"
      id="Fact-896710190090D73885E11ECF8BFE1479-wk-Fact-896710190090D73885E11ECF8BFE1479">FY</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentFiscalYearFocus
      contextRef="FD2019Q4YTD"
      id="Fact-0495CBC5DB78D85DB78F1ECF8BFDF508-wk-Fact-0495CBC5DB78D85DB78F1ECF8BFDF508">2019</dei:DocumentFiscalYearFocus>
    <dei:EntityCentralIndexKey
      contextRef="FD2019Q4YTD"
      id="Fact-CBEFC0020B4BBD5D3768F1A84991AB29-wk-Fact-CBEFC0020B4BBD5D3768F1A84991AB29">0001159167</dei:EntityCentralIndexKey>
    <dei:EntitySmallBusiness
      contextRef="FD2019Q4YTD"
      id="Fact-22F13C6268EA531BD29A30E6AFA2F13B-wk-Fact-22F13C6268EA531BD29A30E6AFA2F13B">false</dei:EntitySmallBusiness>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-1A851E32AFF5EF51986A1ECF8C006831-wk-Fact-1A851E32AFF5EF51986A1ECF8C006831"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-91CA252651609821B3F71ECF8BFF92C6-wk-Fact-91CA252651609821B3F71ECF8BFF92C6"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-6FCB2C06673E860AC8BC1ECF8BF7008B-wk-Fact-6FCB2C06673E860AC8BC1ECF8BF7008B"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-6DE1FF2A101F478D2F4F1ECF8BF6B4AD-wk-Fact-6DE1FF2A101F478D2F4F1ECF8BF6B4AD"
      unitRef="shares">100000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-B4ABAF48AD4BF950BF931ECF8BF9C0DC-wk-Fact-B4ABAF48AD4BF950BF931ECF8BF9C0DC"
      unitRef="shares">27788272</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-F33302985FA0D465FF2A1ECF8BF5BF26-wk-Fact-F33302985FA0D465FF2A1ECF8BF5BF26"
      unitRef="shares">28352390</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-42374256EDCE917579301ECF8BF89AEA-wk-Fact-42374256EDCE917579301ECF8BF89AEA"
      unitRef="shares">27788272</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-087789E805CB5C93EE341ECF8C09B0A7-wk-Fact-087789E805CB5C93EE341ECF8C09B0A7"
      unitRef="shares">28352390</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:LineOfCredit
      contextRef="FI2019Q4"
      decimals="-3"
      id="Fact-BFE56009F1AEFF838F321ECF8BF00B42-wk-Fact-BFE56009F1AEFF838F321ECF8BF00B42"
      unitRef="usd">0</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityInterestRateDescription
      contextRef="FD2019Q4YTD"
      id="Fact-53CCA4B99D143CA54C321ECF8BF1CD24-wk-Fact-53CCA4B99D143CA54C321ECF8BF1CD24">at either (1) LIBOR plus a margin, currently equal to 1.0%, based on the Company's ratio of indebtedness to Adjusted EBITDA (the "Eurodollar Rate"), or (2) the lender's base rate.  </us-gaap:LineOfCreditFacilityInterestRateDescription>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-79518B1F15261AA9D2DE1ECF8BD12335-wk-Fact-79518B1F15261AA9D2DE1ECF8BD12335"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-5093A8B78CE6B38416351ECF8C020A51-wk-Fact-5093A8B78CE6B38416351ECF8C020A51"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-02A5B14B85EC36A496D81ECF8BFC5863-wk-Fact-02A5B14B85EC36A496D81ECF8BFC5863"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-2186618ACEB895A770461ECF8C2C4E6D-wk-Fact-2186618ACEB895A770461ECF8C2C4E6D"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-DD9BBB8518EB12E2238C1ECF8BC7ADD5-wk-Fact-DD9BBB8518EB12E2238C1ECF8BC7ADD5"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="FI2018Q4"
      decimals="INF"
      id="Fact-2FB12AFEE14BEDB548591ECF8B90A784-wk-Fact-2FB12AFEE14BEDB548591ECF8B90A784"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="FI2019Q4"
      decimals="INF"
      id="Fact-3293883D02B52D71F0AB1ECF8BFBBC63-wk-Fact-3293883D02B52D71F0AB1ECF8BFBBC63"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember"
      id="Fact-E6FE04C05C9F57F58DB41ECF8C14897F-wk-Fact-E6FE04C05C9F57F58DB41ECF8C14897F">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember"
      id="Fact-BA9B2CA4F3DC3915BAF61ECF8C0A2EBF-wk-Fact-BA9B2CA4F3DC3915BAF61ECF8C0A2EBF">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"
      id="Fact-C4BD1575713818D46AEC1ECF8C05F9C3-wk-Fact-C4BD1575713818D46AEC1ECF8C05F9C3">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember"
      id="Fact-BAEFFCA50B1914DF66CB1ECF8C085898-wk-Fact-BAEFFCA50B1914DF66CB1ECF8C085898">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember"
      id="Fact-06D5FBB4E4368B11747F1ECF8C0A5900-wk-Fact-06D5FBB4E4368B11747F1ECF8C0A5900">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember"
      id="Fact-6DB03F97FE681E731E7A1ECF8C09553A-wk-Fact-6DB03F97FE681E731E7A1ECF8C09553A">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"
      id="Fact-A05A4E08C3EE5227EDA31ECF8C042276-wk-Fact-A05A4E08C3EE5227EDA31ECF8C042276">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ToolsDiesAndMoldsMember"
      id="Fact-C48CD445629E9834A9B11ECF8C09F263-wk-Fact-C48CD445629E9834A9B11ECF8C09F263">P2Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember"
      id="Fact-6085B1DAD14F29B5DF041ECF8C0EC236-wk-Fact-6085B1DAD14F29B5DF041ECF8C0EC236">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="FI2017Q4"
      decimals="0"
      id="Fact-8DA2616F1A4FCB2CFEDD1ECF8BD53DF3-wk-Fact-8DA2616F1A4FCB2CFEDD1ECF8BD53DF3"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="FI2018Q4"
      decimals="0"
      id="Fact-E041B5BCC8594AD8D1A91ECF8BD35FAE-wk-Fact-E041B5BCC8594AD8D1A91ECF8BD35FAE"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued
      contextRef="FI2019Q4"
      decimals="0"
      id="Fact-C94CEA675DFBF6EEACE61ECF8BD43CBD-wk-Fact-C94CEA675DFBF6EEACE61ECF8BD43CBD"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued>
    <dei:DocumentType
      contextRef="FD2019Q4YTD"
      id="d27570320e629-wk-Fact-8BF2697CAB40DE5AE4EA2435202FCB14">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport
      contextRef="FD2019Q4YTD"
      id="d27570320e649-wk-Fact-4CDF060ECB6ACB3EBCCBF2E1D9F5D9AD">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate
      contextRef="FD2019Q4YTD"
      id="d27570320e659-wk-Fact-3367F795FAFD0D8D49D335E48F96FFB3">2019-12-28</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="FD2019Q4YTD"
      id="d27570320e678-wk-Fact-67B3ABD1D7021C7D32E0F2E27283296A">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="FD2019Q4YTD"
      id="d27570320e688-wk-Fact-91A8202AC72CFC3174C3248BB9B4F6FA">001-36414</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="FD2019Q4YTD"
      id="d27570320e695-wk-Fact-D7EFD9FC39452C84460E243712C6D04B">iROBOT CORPORATION</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="FD2019Q4YTD"
      id="d27570320e716-wk-Fact-2E78C6506410DB55D0E8ED5382F8634D">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="FD2019Q4YTD"
      id="d27570320e726-wk-Fact-6E50222DCC2F991B0626ED52D0F56E76">77-0259335</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="FD2019Q4YTD"
      id="d27570320e753-wk-Fact-562D18A23E786C9C3384ED6B49D6B177">8 Crosby Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="FD2019Q4YTD"
      id="d27570320e759-wk-Fact-C9EA9891DD564C1EEE3BED6EE8B29A93">Bedford</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="FD2019Q4YTD"
      id="d27570320e764-wk-Fact-D28A66CEEA38CC9A1EE4ED6F75DDD1F3">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="FD2019Q4YTD"
      id="d27570320e769-wk-Fact-9219D4BC89B968BC5EBEED701F444AC7">01730</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="FD2019Q4YTD"
      id="d27570320e780-wk-Fact-FAC69070E66460D41982ED70EDB2BA7D">781</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="FD2019Q4YTD"
      id="d27570320e785-wk-Fact-4DC24AEAF07F751E5B08ED717A2AFB8F">430-3000</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="FD2019Q4YTD"
      id="d27570320e831-wk-Fact-7BD9B75B4B763DB24865ED5987D0E8E6">Common Stock, $0.01 par value</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="FD2019Q4YTD"
      id="d27570320e836-wk-Fact-919214A1CCDE899BEA5DED59CF77331E">IRBT</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="FD2019Q4YTD"
      id="d27570320e841-wk-Fact-0E344B0D6F6B20513B27ED5A2B301327">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer
      contextRef="FD2019Q4YTD"
      id="d27570320e851-wk-Fact-19677840A73C3CDAC15BED72568494DB">Yes</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers
      contextRef="FD2019Q4YTD"
      id="d27570320e868-wk-Fact-5D15FD2F95961EF5532AED74048BAF9A">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus
      contextRef="FD2019Q4YTD"
      id="d27570320e877-wk-Fact-C6A75D6B2A3ECDEA869DED749FEBA8EB">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="FD2019Q4YTD"
      id="d27570320e890-wk-Fact-837CF0FC678A2ABA45FDED753374197D">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="FD2019Q4YTD"
      id="d27570320e919-wk-Fact-467616A80E02AFF07B5FED610CB3FADC">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntityShellCompany
      contextRef="FD2019Q4YTD"
      id="d27570320e976-wk-Fact-196C70333B2A388710A6ED680F49D190">false</dei:EntityShellCompany>
    <dei:EntityEmergingGrowthCompany
      contextRef="FD2019Q4YTD"
      id="d27570320e1018-wk-Fact-EF8D0ABD6D9172438E4EED6680C87D25">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="FD2019Q4YTD"
      id="d27570320e1034-wk-Fact-196C70333B2A388710A6ED680F49D190">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat
      contextRef="FI2019Q4"
      decimals="-8"
      id="d27570320e1043-wk-Fact-3A55F51A4D235E28C842EDC2E8CF06D1"
      unitRef="usd">2500000000</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="I2020Q1SharesOutstanding"
      decimals="0"
      id="d27570320e1054-wk-Fact-839B393C8F1C2BF86FE5EDC3C3ADA258"
      unitRef="shares">28352390</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e768-wk-Fact-AA5B5FA1A9ED64DB48E41ECF8C025952"
      unitRef="usd">239392000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e787-wk-Fact-1BE67F1DB1C9712C8F741ECF8C02CD51"
      unitRef="usd">130373000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e802-wk-Fact-331B0FD69B5949B7F76A1ECF8B9118DB"
      unitRef="usd">17032000</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e821-wk-Fact-A4D6B258120F8233859E1ECF8C01C12E"
      unitRef="usd">31605000</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:AccountsAndOtherReceivablesNetCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e841-wk-Fact-533C478FD3AB27E53CF21ECF8BFC7249"
      unitRef="usd">146161000</us-gaap:AccountsAndOtherReceivablesNetCurrent>
    <us-gaap:AccountsAndOtherReceivablesNetCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e860-wk-Fact-1266FAB35552695887F91ECF8B9F1522"
      unitRef="usd">162166000</us-gaap:AccountsAndOtherReceivablesNetCurrent>
    <us-gaap:InventoryNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e880-wk-Fact-DE1D48EE84D86AB353271ECF8BFEFE61"
      unitRef="usd">157347000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e899-wk-Fact-5188E3C98202E8F83A161ECF8C028A0C"
      unitRef="usd">164633000</us-gaap:InventoryNet>
    <us-gaap:OtherAssetsCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e919-wk-Fact-C552389EFDCA2EDE122B1ECF8B93AD23"
      unitRef="usd">34285000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e938-wk-Fact-CD9659E51DCB36002D281ECF8B9D28B4"
      unitRef="usd">25660000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e958-wk-Fact-323C7ACE16022E06B1401ECF8B99C62C"
      unitRef="usd">594217000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e977-wk-Fact-A16CBB12F2DC6D903BCA1ECF8B90AEAD"
      unitRef="usd">514437000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e997-wk-Fact-C4252AD0714C3631DD521ECF8BF900C4"
      unitRef="usd">75988000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1016-wk-Fact-7A67558A4703169135D01ECF8B91E4C0"
      unitRef="usd">57026000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1036-wk-Fact-CA95ECF4B9B09623446EECA5EC06C5D3"
      unitRef="usd">47478000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1055-wk-Fact-A96F548D256668F2AD13ED1437569947"
      unitRef="usd">0</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1076-wk-Fact-74AE562E8A0E017939721ECF8B95ABA4"
      unitRef="usd">41791000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1095-wk-Fact-34B304C78C56D45C4C6C1ECF8BA33DA4"
      unitRef="usd">36979000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:Goodwill
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1115-wk-Fact-FA888AE4A5D8E20382961ECF8BA4F872"
      unitRef="usd">118732000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1134-wk-Fact-F7507234ED785F93176A1ECF8B9EA43E"
      unitRef="usd">118896000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1154-wk-Fact-7286D37E27ACA16012C01ECF8BA58474"
      unitRef="usd">12352000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1173-wk-Fact-CD47058F31B7D9B4302E1ECF8C026833"
      unitRef="usd">24273000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1193-wk-Fact-86F974901BA6450EC6771ECF8C03BD50"
      unitRef="usd">30195000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1212-wk-Fact-AAEF52487185BBC39B211ECF8B9F5CA1"
      unitRef="usd">15350000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1237-wk-Fact-3A349621D4E5D096479A1ECF8BA22C6E"
      unitRef="usd">920753000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1256-wk-Fact-30706D3007250902E57B1ECF8B970E7C"
      unitRef="usd">766961000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1358-wk-Fact-3501EC7B37F56BC543A31ECF8C06A3E3"
      unitRef="usd">116185000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1377-wk-Fact-2A0DDFD8215F4981DCD71ECF8BFBFC8D"
      unitRef="usd">136742000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1392-wk-Fact-85F0823588BFA4812E1E1ECF8BFA5AE4"
      unitRef="usd">81768000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1411-wk-Fact-CB9C1BD46E27F5E075C51ECF8B919BB7"
      unitRef="usd">71259000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1431-wk-Fact-A47F17EBECE53E0D86B61ECF8C02F0C1"
      unitRef="usd">4549000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:DeferredRevenueCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1450-wk-Fact-8CCDFA646B965C1E83B31ECF8C01918A"
      unitRef="usd">5756000</us-gaap:DeferredRevenueCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1470-wk-Fact-1E7ECBE64A921D5AA9511ECF8BA0E034"
      unitRef="usd">202502000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1489-wk-Fact-BDCAEF1C0E0EB2B1A4C91ECF8C007DA8"
      unitRef="usd">213757000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1510-wk-Fact-2350D621F8FAC0CB0FFAED15D3C0F08B"
      unitRef="usd">54928000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1529-wk-Fact-8323EACF5A58FD6C428FED16C255CD84"
      unitRef="usd">0</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1549-wk-Fact-81578440F552EA88D6EB1ECF8BA2AC4B"
      unitRef="usd">912000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1568-wk-Fact-50ABD58BC957477D9A671ECF8B97EB23"
      unitRef="usd">4005000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1588-wk-Fact-5858CF15DBF5992B6A6E1ECF8C056A6A"
      unitRef="usd">10342000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1607-wk-Fact-8D5A3BC86624C209BD281ECF8B944823"
      unitRef="usd">13877000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1627-wk-Fact-7073C7DE2D13D9CE8FD71ECF8B9BDB20"
      unitRef="usd">66182000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1646-wk-Fact-FD5B81651EEFA9FFE0E61ECF8BFEDC37"
      unitRef="usd">17882000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1666-wk-Fact-B839FE76FF9580ED0EC61ECF8B9513CE"
      unitRef="usd">268684000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1685-wk-Fact-6427ADDDAF958EF9B9061ECF8B946075"
      unitRef="usd">231639000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies
      contextRef="FI2019Q4"
      id="d27577324e1705-wk-Fact-1A6DF98DA3D4FC382F871ECF8B924D5A"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="FI2018Q4"
      id="d27577324e1724-wk-Fact-4F45535AE3C92D78E7A91ECF8B99A8D5"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PreferredStockValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1744-wk-Fact-431E2BADB4F21E4A54301ECF8BF96CB2"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1763-wk-Fact-8DF2B255966F1BB8BD2D1ECF8BF9CFCC"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1783-wk-Fact-BD3EA83EA3DB8A2B07741ECF8B9CCC88"
      unitRef="usd">284000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1802-wk-Fact-B8F722DDABA7DFE569911ECF8BA14D20"
      unitRef="usd">278000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1822-wk-Fact-EA0BE5C7A80CC7340BF21ECF8BA08721"
      unitRef="usd">196455000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1841-wk-Fact-812E4F96E24BAF7D27961ECF8B9A23E5"
      unitRef="usd">172771000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1861-wk-Fact-8188768F0CAE542FF0851ECF8BFCABC0"
      unitRef="usd">452321000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1880-wk-Fact-6F2B52EC3C7310D74B1D1ECF8BFDD755"
      unitRef="usd">367021000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1900-wk-Fact-0CDEF9677320BC612CA61ECF8B9DBC20"
      unitRef="usd">3009000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1919-wk-Fact-AB67E2B10008AC35F6681ECF8BFD4EF1"
      unitRef="usd">-4748000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1941-wk-Fact-375C3D6803EB5FD60E7B1ECF8BFF0284"
      unitRef="usd">652069000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e1960-wk-Fact-83B73988246E37DAEC801ECF8B96F529"
      unitRef="usd">535322000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27577324e1985-wk-Fact-88606A7593D0CD161ED61ECF8BA66B53"
      unitRef="usd">920753000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27577324e2004-wk-Fact-1C15571C5DFAC57D5D531ECF8BA49C6F"
      unitRef="usd">766961000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:Revenues
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e772-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49"
      unitRef="usd">1214010000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e791-wk-Fact-989EE34444750D4496461ECF8BCC77EC"
      unitRef="usd">1092584000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e810-wk-Fact-04C530ADA4DB9ABBE46B1ECF8C290722"
      unitRef="usd">883911000</us-gaap:Revenues>
    <irbt:Costofproductrevenue
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e882-wk-Fact-329FD7F92EBC146F85C21ECF8C045F72"
      unitRef="usd">658362000</irbt:Costofproductrevenue>
    <irbt:Costofproductrevenue
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e901-wk-Fact-2FE21215C6273DA8BECB1ECF8C0FB8FA"
      unitRef="usd">518612000</irbt:Costofproductrevenue>
    <irbt:Costofproductrevenue
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e920-wk-Fact-3DC6619D43D4DFE0C51D1ECF8C15A44A"
      unitRef="usd">438114000</irbt:Costofproductrevenue>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e941-wk-Fact-72320B8F36344C7BA6C51ECF8C22F854"
      unitRef="usd">11721000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e960-wk-Fact-335E9B0C416FE8C700CD1ECF8C1816A0"
      unitRef="usd">18544000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <us-gaap:CostOfGoodsAndServicesSoldAmortization
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e979-wk-Fact-BB30FAA35D84A9E94C501ECF8C2BCF7F"
      unitRef="usd">12638000</us-gaap:CostOfGoodsAndServicesSoldAmortization>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1000-wk-Fact-AF9B97F370BB84E713061ECF8C1946E9"
      unitRef="usd">670083000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1019-wk-Fact-80E2006CF272FF94BA131ECF8BC478A6"
      unitRef="usd">537156000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1038-wk-Fact-2ED9B5481D1192AEC9161ECF8C226B0E"
      unitRef="usd">450752000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1059-wk-Fact-DB8629595EB79157AE1B1ECF8C22E670"
      unitRef="usd">543927000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1078-wk-Fact-EBA5DB7C56879909E4771ECF8BC686A5"
      unitRef="usd">555428000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1097-wk-Fact-0208A1D86525D74F3B411ECF8C03AB8A"
      unitRef="usd">433159000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1180-wk-Fact-BFDF879C3E92810087011ECF8C163D9E"
      unitRef="usd">141607000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1199-wk-Fact-4BD11A3A54FAAF0AE6AD1ECF8C2D236D"
      unitRef="usd">140629000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1218-wk-Fact-6B48AFFDCDCFEE6C0FE01ECF8BCF14DA"
      unitRef="usd">113149000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1239-wk-Fact-85FB4C1595E8E62DFAD51ECF8C1F6BA8"
      unitRef="usd">231548000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1258-wk-Fact-16B96BA94ABE529BF1A41ECF8BCA2D94"
      unitRef="usd">210411000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1277-wk-Fact-3F23E9F994911580F8631ECF8C036996"
      unitRef="usd">162110000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1299-wk-Fact-39ABBEDD4F9A7BBB8A0D1ECF8C04A295"
      unitRef="usd">83103000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1318-wk-Fact-AE419D16BFD91FB430841ECF8C23A4AA"
      unitRef="usd">97501000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1337-wk-Fact-F08C1B4215D4893E87E91ECF8C15AA8C"
      unitRef="usd">84771000</us-gaap:GeneralAndAdministrativeExpense>
    <irbt:AmortizationofIntangibleAssetsNonproduction
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1358-wk-Fact-59051719DEAFEC6FFA6A1ECF8C2FF85D"
      unitRef="usd">1051000</irbt:AmortizationofIntangibleAssetsNonproduction>
    <irbt:AmortizationofIntangibleAssetsNonproduction
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1377-wk-Fact-C92F24BC647064FABAF71ECF8BC98EB3"
      unitRef="usd">1065000</irbt:AmortizationofIntangibleAssetsNonproduction>
    <irbt:AmortizationofIntangibleAssetsNonproduction
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1396-wk-Fact-A7DD9679B31443285C0F1ECF8C1CB142"
      unitRef="usd">439000</irbt:AmortizationofIntangibleAssetsNonproduction>
    <us-gaap:OperatingExpenses
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1417-wk-Fact-C7075CD9E316E63403261ECF8C2636E3"
      unitRef="usd">457309000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1436-wk-Fact-854A3DF366D5A11BE5A01ECF8C2E9066"
      unitRef="usd">449606000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1455-wk-Fact-0BEF751CEE7533EF6C851ECF8C1A0F15"
      unitRef="usd">360469000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1476-wk-Fact-5A7D8456DFA66B7696C31ECF8BC9FF3A"
      unitRef="usd">86618000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1495-wk-Fact-1B6258D8E56A6C1582611ECF8C097751"
      unitRef="usd">105822000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1514-wk-Fact-1FF86313BBA151ECAF8F1ECF8C1FA811"
      unitRef="usd">72690000</us-gaap:OperatingIncomeLoss>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1535-wk-Fact-9A8B057550F3F8100D921ECF8BCEE041"
      unitRef="usd">12215000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1554-wk-Fact-90E7DBFDDD6E3E7339F81ECF8C21C584"
      unitRef="usd">2800000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1573-wk-Fact-F52318E93A4F1EB20E581ECF8C28F1D0"
      unitRef="usd">3676000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1594-wk-Fact-03FB067FCA73C1F5C5921ECF8C2024AD"
      unitRef="usd">98833000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1613-wk-Fact-1F63C4B83778EE7F839D1ECF8BCA93D9"
      unitRef="usd">108622000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1632-wk-Fact-C0FFAF418D6578BE77651ECF8C1B319E"
      unitRef="usd">76366000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1653-wk-Fact-80B82630C160508D82E51ECF8C24901F"
      unitRef="usd">13533000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1672-wk-Fact-A7276CBBF0428CED119F1ECF8C229C9C"
      unitRef="usd">20630000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1691-wk-Fact-BDD0129398F515CA82BC1ECF8C10B80C"
      unitRef="usd">25402000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e1717-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB"
      unitRef="usd">85300000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e1736-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE"
      unitRef="usd">87992000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e1755-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE"
      unitRef="usd">50964000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d27579089e1838-wk-Fact-4EA4B5D2424F553CAF431ECF8C0E8F54"
      unitRef="usdPerShare">3.04</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d27579089e1857-wk-Fact-FE33DC5020FD0D6DAE2C1ECF8C23CC4F"
      unitRef="usdPerShare">3.18</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27579089e1876-wk-Fact-BB8B39A2D003DD0E29AD1ECF8BCD70AF"
      unitRef="usdPerShare">1.85</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d27579089e1897-wk-Fact-943D1DF1A869B1A145301ECF8BCDE983"
      unitRef="usdPerShare">2.97</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d27579089e1916-wk-Fact-7706267A6D11A924F1B91ECF8C2C9748"
      unitRef="usdPerShare">3.07</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27579089e1935-wk-Fact-09F8AEEA4540A4A741A71ECF8C04C5E7"
      unitRef="usdPerShare">1.77</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e2014-wk-Fact-74F5245149CE79111EAC1ECF8C2C0770"
      unitRef="shares">28097000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e2033-wk-Fact-887416FC7A4B00F3B6331ECF8C14B1E8"
      unitRef="shares">27692000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e2052-wk-Fact-B4142115B6E2E0E768601ECF8C197AE3"
      unitRef="shares">27611000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27579089e2073-wk-Fact-3400E7FA01B76C78B8141ECF8C194494"
      unitRef="shares">28735000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27579089e2092-wk-Fact-9D4BCD49EE27BC5D19911ECF8BCBEAAF"
      unitRef="shares">28640000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27579089e2111-wk-Fact-1672EE9525AC62469A941ECF8C06E2C6"
      unitRef="shares">28753000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27582272e772-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB"
      unitRef="usd">85300000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27582272e791-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE"
      unitRef="usd">87992000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27582272e810-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE"
      unitRef="usd">50964000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27582272e888-wk-Fact-76740A30FEBBD0BDC89C1ECF8BD2B08A"
      unitRef="usd">-3435000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27582272e907-wk-Fact-7C05F2CBC5154DD59A4A1ECF8BD8BDFF"
      unitRef="usd">-5896000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27582272e927-wk-Fact-EDFF509C86DBAE882E4D1ECF8BD9FBCC"
      unitRef="usd">1994000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27582272e948-wk-Fact-100F50FD1664F8E84B601ECF8BDB9DF0"
      unitRef="usd">12363000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27582272e967-wk-Fact-888061ACDDA8D54C13321ECF8BDC4A57"
      unitRef="usd">-327000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27582272e987-wk-Fact-5E60DAA1AF764184F3581ECF8BD2F6C1"
      unitRef="usd">490000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27582272e1008-wk-Fact-B5DBEC8D7E74A3943DA41ECF8BD622A1"
      unitRef="usd">1418000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27582272e1028-wk-Fact-808B71A7259C9B2573E31ECF8BD4E060"
      unitRef="usd">499000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27582272e1048-wk-Fact-9E363696AC9A70072C511ECF8BD75B60"
      unitRef="usd">295000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27582272e1070-wk-Fact-6FE83F2011AC5ACB66B61ECF8BDBA575"
      unitRef="usd">247000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27582272e1089-wk-Fact-5C1198D54EC5E70A13171ECF8BD3BC51"
      unitRef="usd">-18000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27582272e1109-wk-Fact-7399BAD4DB8EBDFB75151ECF8BD2D815"
      unitRef="usd">-46000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27582272e1136-wk-Fact-8CF61EAF35F863B486241ECF8BD51565"
      unitRef="usd">93057000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27582272e1155-wk-Fact-50FD0428228C960973101ECF8BD56ECC"
      unitRef="usd">81252000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27582272e1174-wk-Fact-9F7777CDF1F5BC4041621ECF8BD6FDD4"
      unitRef="usd">53107000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="INF"
      id="d27593717e909-wk-Fact-B7EA0E1896B19DF80DDD1ECF8C2D4B0A"
      unitRef="shares">27238000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e928-wk-Fact-FF9DD2C1ACA2F9CFFF611ECF8C1CB57F"
      unitRef="usd">272000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e947-wk-Fact-CB2DE8DAF69982458F9B1ECF8B8F39B0"
      unitRef="usd">161885000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e967-wk-Fact-CFA356AC6336A880E9741ECF8C2C8BD7"
      unitRef="usd">226950000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d27593717e986-wk-Fact-9A55D66E55708A7DF6E51ECF8C2513D2"
      unitRef="usd">-151000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2016Q4"
      decimals="-3"
      id="d27593717e1006-wk-Fact-787BB73059430E4ABCD71ECF8C25A2C0"
      unitRef="usd">388956000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e1022-wk-Fact-34146DEDB171D58993C91ECF8C18C7D3"
      unitRef="shares">367000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e1036-wk-Fact-797C00988D0DC84C9CA01ECF8C280DAD"
      unitRef="usd">4000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e1055-wk-Fact-9F982038AF4608DF3B0F1ECF8C2B138F"
      unitRef="usd">10569000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e1115-wk-Fact-666BBBC7DA7B00F9D4961ECF8C24E7D2"
      unitRef="usd">10573000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e1136-wk-Fact-DAEAD03632F29DD2D2F31ECF8C127608"
      unitRef="shares">15000</us-gaap:DeferredCompensationArrangementWithIndividualSharesIssued>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e1250-wk-Fact-0076F7D14847416900C61ECF8C1B9756"
      unitRef="shares">376000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e1264-wk-Fact-87BF1F2D79E1E9444F161ECF8C27B159"
      unitRef="usd">4000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e1283-wk-Fact-4F3D50E1A68F05A284F01ECF8C2D4F5A"
      unitRef="usd">-4000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e1344-wk-Fact-47EAA3F6CD8BD859C2451ECF8C23FD4E"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e1400-wk-Fact-A8EC02346AF16CDD9D5A1ECF8C243F19"
      unitRef="usd">19751000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e1460-wk-Fact-A138120945B22E5E20761ECF8C21BB51"
      unitRef="usd">19751000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e1481-wk-Fact-5BC9DF88F21C512C61AA1ECF8C2B5A4B"
      unitRef="shares">51000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e1496-wk-Fact-2B74ECEB3E5F0DBCF5E6ED4EC441E993"
      unitRef="usd">-1000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e1516-wk-Fact-0608B6C680A63F55C40B1ECF8C165956"
      unitRef="usd">2982000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e1577-wk-Fact-67F6712FE32990D456221ECF8C16EB7F"
      unitRef="usd">2983000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d27593717e1675-wk-Fact-007CCA9A8C67992B71F01ECF8C2112C4"
      unitRef="usd">2143000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e1694-wk-Fact-702318CF158CD73759CC1ECF8C18BC40"
      unitRef="usd">2143000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e1750-wk-Fact-4DE73D1F91AB7C59A0D41ECF8C0CD58E"
      unitRef="usd">65000</irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation>
    <irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e1810-wk-Fact-894B194957DAD6939FF71ECF8C22799A"
      unitRef="usd">65000</irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e1866-wk-Fact-F5174845F52BACE69F91EDC976B1EF0E"
      unitRef="usd">783000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e1886-wk-Fact-5008B09B2CE901CBB137EDCA00674569"
      unitRef="usd">75000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27593717e1925-wk-Fact-AF9B633BA3CCEBDBD6C8EDCA3BFC22A6"
      unitRef="usd">858000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e2003-wk-Fact-723B668C72806198E3051ECF8C1D529E"
      unitRef="usd">50964000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27593717e2042-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE"
      unitRef="usd">50964000</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2063-wk-Fact-CACFE0E881D1FE6BF8BF1ECF8C16F325"
      unitRef="shares">27945000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2082-wk-Fact-78B62BC1E4EA112BB0F31ECF8C0A01E4"
      unitRef="usd">279000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e2101-wk-Fact-F7992F2123903387ACFD1ECF8C24D691"
      unitRef="usd">190067000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e2121-wk-Fact-FF125D39D03B25B189461ECF8C1C4FB0"
      unitRef="usd">277989000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d27593717e2140-wk-Fact-C6C0665582A4F35D88461ECF8C2AAE1A"
      unitRef="usd">1992000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27593717e2159-wk-Fact-29BC9F3344896F2204A91ECF8C1A6CE7"
      unitRef="usd">470327000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2175-wk-Fact-1399C57CDA05347F674F1ECF8C2179EF"
      unitRef="shares">285000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2189-wk-Fact-791D7208E10EBE01228E1ECF8C2B7947"
      unitRef="usd">3000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e2208-wk-Fact-559CB8FF98604A3CD7071ECF8C2D15B1"
      unitRef="usd">10363000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e2268-wk-Fact-79D51A7ADFA0946F4D3B1ECF8C2586BC"
      unitRef="usd">10366000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2289-wk-Fact-02A7F82D7CADECAC801E1ECF8C1D2023"
      unitRef="shares">408000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2303-wk-Fact-0994B8463EE928B6CBD61ECF8C22916B"
      unitRef="usd">4000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e2322-wk-Fact-BF890EF4CF6B79BB3C2B1ECF8C2988FF"
      unitRef="usd">-4000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e2383-wk-Fact-890789D42BD4E95604EA1ECF8C0EEF6B"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e2439-wk-Fact-17782E4F8543C4CAB8721ECF8C0A3753"
      unitRef="usd">25804000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e2499-wk-Fact-4788B31821E6C1230C9E1ECF8C14BC61"
      unitRef="usd">25804000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2520-wk-Fact-73CEB7EAA8286E741A401ECF8C0FFCE3"
      unitRef="shares">51000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2535-wk-Fact-2B9EADABB630EFF437E51ECF8C2BC41F"
      unitRef="usd">0</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e2554-wk-Fact-EDEB285F94C88AD7C9851ECF8B923942"
      unitRef="usd">3532000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e2615-wk-Fact-7C8F8BF01751FDC42DE41ECF8C131BCF"
      unitRef="usd">3532000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d27593717e2711-wk-Fact-2F0AB25AB7C271796C9D1ECF8C1BE8C4"
      unitRef="usd">-6740000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e2731-wk-Fact-CBB4B74A1C4AF27256E51ECF8C15012A"
      unitRef="usd">-6740000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e2788-wk-Fact-9DC24F8DE9F4314854E71ECF8C242678"
      unitRef="usd">65000</irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation>
    <irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e2848-wk-Fact-10827EBFBF5E7744D7771ECF8C1E726E"
      unitRef="usd">65000</irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e2923-wk-Fact-D0826C31906B847684861ECF8C2D8F1E"
      unitRef="usd">1040000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27593717e2962-wk-Fact-1205382A154A15E8F89E1ECF8C0540B2"
      unitRef="usd">1040000</us-gaap:CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e2983-wk-Fact-FE3FA35A93795D2486BD1ECF8BF22210"
      unitRef="shares">799000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e2998-wk-Fact-FEA5BC7A8D6760AB5DE11ECF8BF37CBF"
      unitRef="usd">8000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e3018-wk-Fact-B336B4ADABDD2FCC424E1ECF8BF0CCCA"
      unitRef="usd">49992000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e3079-wk-Fact-F958D5413811BDAFBB921ECF8BED5634"
      unitRef="usd">50000000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e3157-wk-Fact-0FE16D953BB746DA84BD1ECF8C29BC99"
      unitRef="usd">87992000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27593717e3196-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE"
      unitRef="usd">87992000</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3218-wk-Fact-A104F1338EEA0A5172421ECF8C07FF70"
      unitRef="shares">27788000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3237-wk-Fact-93C3349D005AA52FA0A21ECF8C2D4169"
      unitRef="usd">278000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e3256-wk-Fact-419CEB1A958E01D91FF71ECF8C05450E"
      unitRef="usd">172771000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e3276-wk-Fact-54B6EFD1C366F037697C1ECF8C2E85AC"
      unitRef="usd">367021000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d27593717e3295-wk-Fact-3151E958F4A5846196EB1ECF8C2E786F"
      unitRef="usd">-4748000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27593717e3315-wk-Fact-83B73988246E37DAEC801ECF8B96F529"
      unitRef="usd">535322000</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3331-wk-Fact-80B9355EE80EB8852D3D1ECF8B8F0043"
      unitRef="shares">187000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3345-wk-Fact-3AB830DCAA87E712A6A41ECF8C24D52D"
      unitRef="usd">2000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e3364-wk-Fact-36BEFE091306BC6FD3571ECF8C270AFC"
      unitRef="usd">7145000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27593717e3424-wk-Fact-2A46C2F5528E28207FCD1ECF8C2ED7A0"
      unitRef="usd">7147000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3445-wk-Fact-01A4F548E09BCA12D86A1ECF8C17B6D2"
      unitRef="shares">436000</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3459-wk-Fact-57E24BD503CC116AF6931ECF8C232CA4"
      unitRef="usd">5000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e3478-wk-Fact-978BE342C775FFDE49B31ECF8C26E9FB"
      unitRef="usd">-5000</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27593717e3539-wk-Fact-D4B84FE5F21C638FC38F1ECF8C27527E"
      unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e3595-wk-Fact-5B370C9F6F96B2AD05D61ECF8C26E452"
      unitRef="usd">23744000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27593717e3655-wk-Fact-7931B41BD6C1E997D6B01ECF8C0773C8"
      unitRef="usd">23744000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3676-wk-Fact-52C5B991946E129C0A781ECF8C217AA9"
      unitRef="shares">-59000</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e3691-wk-Fact-553D80ADADB442C2B5B41ECF8C092390"
      unitRef="usd">-1000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e3711-wk-Fact-731AC84C2FA801C96E011ECF8C0B72E4"
      unitRef="usd">-7276000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27593717e3772-wk-Fact-D3DE93D6F9C6627A908E1ECF8C2E6AFA"
      unitRef="usd">-7277000</irbt:StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d27593717e3870-wk-Fact-2AD300B539BC31ECF6741ECF8C0DCEFB"
      unitRef="usd">7757000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27593717e3889-wk-Fact-AF76486AC7C9DA70CC9E1ECF8C1F210E"
      unitRef="usd">7757000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e3945-wk-Fact-16EBDC90527024FF4A8E1ECF8C2A6911"
      unitRef="usd">76000</irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation>
    <irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27593717e4005-wk-Fact-A6C136C061ADECD3F2E81ECF8C2F1121"
      unitRef="usd">76000</irbt:AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e4082-wk-Fact-077CAE85F9DAFC7CD232EDCC8DCA9BFD"
      unitRef="usd">85300000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27593717e4121-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB"
      unitRef="usd">85300000</us-gaap:NetIncomeLoss>
    <us-gaap:CommonStockSharesIssued
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e4142-wk-Fact-CB8F65E7155E1793E5E81ECF8C1091F7"
      unitRef="shares">28352000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember"
      decimals="-3"
      id="d27593717e4161-wk-Fact-102501F129D24F65DCDF1ECF8C2D5623"
      unitRef="usd">284000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="d27593717e4180-wk-Fact-F2B5DF4BAAEECF10FA361ECF8C234691"
      unitRef="usd">196455000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="d27593717e4200-wk-Fact-607C81B36F2A2B9DB9AE1ECF8C1976EB"
      unitRef="usd">452321000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="d27593717e4219-wk-Fact-2C75BE75CC7E0DE427A41ECF8C29F7BD"
      unitRef="usd">3009000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27593717e4238-wk-Fact-375C3D6803EB5FD60E7B1ECF8BFF0284"
      unitRef="usd">652069000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e832-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB"
      unitRef="usd">85300000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e851-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE"
      unitRef="usd">87992000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e870-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE"
      unitRef="usd">50964000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e948-wk-Fact-76921A9E7C41D6F392C01ECF8C0172E5"
      unitRef="usd">37159000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e967-wk-Fact-FBE2A9A5910C8B01FC281ECF8BFC1115"
      unitRef="usd">36574000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e986-wk-Fact-D5694E254E541CB381361ECF8BFBC52F"
      unitRef="usd">25499000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:GainLossOnSaleOfEquityInvestments
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1007-wk-Fact-86C2A8237893A571510EEDD0673B4CB5"
      unitRef="usd">8439000</us-gaap:GainLossOnSaleOfEquityInvestments>
    <us-gaap:GainLossOnSaleOfEquityInvestments
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1027-wk-Fact-D24DDEF0DBA27722F58FEDD0A530547E"
      unitRef="usd">0</us-gaap:GainLossOnSaleOfEquityInvestments>
    <us-gaap:GainLossOnSaleOfEquityInvestments
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1046-wk-Fact-2B8BBC810584B0FEC075EDD0A67D3E40"
      unitRef="usd">0</us-gaap:GainLossOnSaleOfEquityInvestments>
    <us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1067-wk-Fact-4B973663F6058C2831381ECF8C2C9ED9"
      unitRef="usd">0</us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount>
    <us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1086-wk-Fact-E2B4E6C896C904E07AA91ECF8BFAE403"
      unitRef="usd">0</us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount>
    <us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1105-wk-Fact-4C50DA7A2E69E04208251ECF8C29F5CF"
      unitRef="usd">2243000</us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount>
    <us-gaap:ShareBasedCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1127-wk-Fact-48E87CA1CA896E92C1E31ECF8BF514D1"
      unitRef="usd">23744000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1146-wk-Fact-F797F7013D0C23BD45341ECF8C1E59DC"
      unitRef="usd">25804000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1165-wk-Fact-2A27C7E4B8D2422018FF1ECF8BFD0B6A"
      unitRef="usd">19751000</us-gaap:ShareBasedCompensation>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1186-wk-Fact-0D8E4B97F55CBC72F65A1ECF8BF7663B"
      unitRef="usd">11118000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1206-wk-Fact-22C54FBCB88DC53428AA1ECF8C1A1123"
      unitRef="usd">10848000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1226-wk-Fact-BD263DABF57D83F4B5181ECF8C18747F"
      unitRef="usd">999000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:OtherOperatingActivitiesCashFlowStatement
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1248-wk-Fact-D15039E584C7C1242C7E1ECF8BFB6E1E"
      unitRef="usd">7267000</us-gaap:OtherOperatingActivitiesCashFlowStatement>
    <us-gaap:OtherOperatingActivitiesCashFlowStatement
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1267-wk-Fact-E8FA63DEC42AC364D49F1ECF8C09B548"
      unitRef="usd">1837000</us-gaap:OtherOperatingActivitiesCashFlowStatement>
    <us-gaap:OtherOperatingActivitiesCashFlowStatement
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1286-wk-Fact-D535162ADFEEC5F179DB1ECF8BFCB396"
      unitRef="usd">864000</us-gaap:OtherOperatingActivitiesCashFlowStatement>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1370-wk-Fact-D174410F77DCE474DEA91ECF8C0D9EA9"
      unitRef="usd">-13064000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1389-wk-Fact-8314F77A63286F4369E11ECF8C06E65C"
      unitRef="usd">23920000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1409-wk-Fact-125A4E4E63AF1B79FC6E1ECF8BF8ACC0"
      unitRef="usd">53251000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1431-wk-Fact-26990B4E6F071712F6081ECF8C27DB7E"
      unitRef="usd">-7307000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1450-wk-Fact-1957BB08AE6CBD3E62991ECF8C23E905"
      unitRef="usd">58546000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1470-wk-Fact-F4016B4BACBE868CC81C1ECF8BF626FA"
      unitRef="usd">1470000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1492-wk-Fact-793493FF6CB46E206C011ECF8BF6F085"
      unitRef="usd">3310000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1512-wk-Fact-4FD1C29627DE60B53CA51ECF8C06E0B9"
      unitRef="usd">8533000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1532-wk-Fact-34F99B4B1FF2D13A5A0D1ECF8C0AA15E"
      unitRef="usd">10562000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1554-wk-Fact-02222BFE7887130EDF7C1ECF8C170298"
      unitRef="usd">-20536000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1574-wk-Fact-3FF44EA095322EC4AFF21ECF8C17FF6F"
      unitRef="usd">22470000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1593-wk-Fact-1E0CEC6EFA0233E492321ECF8BF6E5C2"
      unitRef="usd">17457000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1614-wk-Fact-BE82BAD0BBECE8FF42CA1ECF8BFF223D"
      unitRef="usd">-386000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1634-wk-Fact-85A1079F1A77CDB72EBB1ECF8C00D7B4"
      unitRef="usd">-1145000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccruedLiabilities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1654-wk-Fact-B3E2875879CD2EF901221ECF8C204186"
      unitRef="usd">30305000</us-gaap:IncreaseDecreaseInOtherAccruedLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1675-wk-Fact-12F46712A8DBB66E93C11ECF8C14D2A9"
      unitRef="usd">130052000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1694-wk-Fact-B2FADD06C71D2DC928681ECF8C1E7C4D"
      unitRef="usd">71685000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1713-wk-Fact-1A6A44B712496E8854D11ECF8C1EED67"
      unitRef="usd">76315000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1796-wk-Fact-2CD74D8077FA364A0A4F1ECF8BFA80B0"
      unitRef="usd">35337000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1816-wk-Fact-C4AA4AA87C4E75AC8BFD1ECF8C20FA4E"
      unitRef="usd">32422000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1836-wk-Fact-CBD0DF2E4A0570BA46061ECF8C0D9645"
      unitRef="usd">23371000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1858-wk-Fact-0B7A236664114102B3EF1ECF8BF4B05D"
      unitRef="usd">5436000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1878-wk-Fact-753D05CCDB8F9419815C1ECF8C26A96F"
      unitRef="usd">2363000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1898-wk-Fact-9987630EAC4355F91DBD1ECF8BF42AEF"
      unitRef="usd">1542000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1920-wk-Fact-CC0D1EE1367A6BA5A4071ECF8C2068F0"
      unitRef="usd">9787000</us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities>
    <us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e1939-wk-Fact-AD392065660D2A2B91451ECF8C0F33E7"
      unitRef="usd">856000</us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities>
    <us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e1958-wk-Fact-D5C2B39AF8D6A8959FC61ECF8BFD34BE"
      unitRef="usd">1267000</us-gaap:ProceedsFromSaleOfOtherAssetsInvestingActivities>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e1980-wk-Fact-AD5F9FB9DFFBFBD116D51ECF8C1A673A"
      unitRef="usd">2817000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2000-wk-Fact-57739DB8F53B088221691ECF8BF7291D"
      unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2019-wk-Fact-FBDAD50D4D8C5C1BAAD51ECF8C01E08A"
      unitRef="usd">148765000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireAvailableForSaleSecurities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2041-wk-Fact-F1BDFF9A52BED5DF17BA1ECF8C16299F"
      unitRef="usd">0</us-gaap:PaymentsToAcquireAvailableForSaleSecurities>
    <us-gaap:PaymentsToAcquireAvailableForSaleSecurities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2060-wk-Fact-417FA83194DF4CBF35821ECF8BF4FC74"
      unitRef="usd">6438000</us-gaap:PaymentsToAcquireAvailableForSaleSecurities>
    <us-gaap:PaymentsToAcquireAvailableForSaleSecurities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2080-wk-Fact-F511A6331786FA596BC91ECF8BF5C508"
      unitRef="usd">10578000</us-gaap:PaymentsToAcquireAvailableForSaleSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2102-wk-Fact-960093A15573F1DA28331ECF8C05674C"
      unitRef="usd">12880000</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2121-wk-Fact-1FB6672DA436278C7A8D1ECF8BF6FEB9"
      unitRef="usd">14000000</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2140-wk-Fact-2F233D4D5CB2FAA4FA911ECF8C1FD847"
      unitRef="usd">13066000</us-gaap:ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2161-wk-Fact-FB791AF667EE2C47497C1ECF8BFF2E3D"
      unitRef="usd">-20923000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2181-wk-Fact-E1CB8599DDACD8C44D8A1ECF8C19E925"
      unitRef="usd">-26367000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2201-wk-Fact-9DC858C0740F0F032B131ECF8BFE0EC9"
      unitRef="usd">-169923000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromStockPlans
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2285-wk-Fact-40E2B328D8F33AB302321ECF8C10C267"
      unitRef="usd">7147000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2304-wk-Fact-8AB1D1EF8BF65E8479CB1ECF8C28758F"
      unitRef="usd">10366000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:ProceedsFromStockPlans
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2323-wk-Fact-9E7E447D8D6FD7C2BC391ECF8C25A59B"
      unitRef="usd">10573000</us-gaap:ProceedsFromStockPlans>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2344-wk-Fact-0854863792C79320772B1ECF8C169497"
      unitRef="usd">7277000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2364-wk-Fact-F7895FF8F501078B38351ECF8C072B76"
      unitRef="usd">3532000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2384-wk-Fact-4A9B1E988F3099F99E031ECF8C196089"
      unitRef="usd">2983000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2406-wk-Fact-FBE27EC3F4E4C1BFD6DE1ECF8C03E06E"
      unitRef="usd">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2425-wk-Fact-CAA69835CA6EAB2486131ECF8C215A48"
      unitRef="usd">50000000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2445-wk-Fact-06D068B2BB35869F960A1ECF8C120692"
      unitRef="usd">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2466-wk-Fact-F4B36AA2FF65284327AB1ECF8C23630E"
      unitRef="usd">-130000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2486-wk-Fact-C8598416011B7BF898211ECF8C16912C"
      unitRef="usd">-43166000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2506-wk-Fact-B19BC426DFAB8D2BA2FB1ECF8BFC7365"
      unitRef="usd">7590000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2527-wk-Fact-53437F2F54D96659B0F21ECF8C271DF8"
      unitRef="usd">20000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2546-wk-Fact-C0AB589C2EC3F4B8F3181ECF8C01B805"
      unitRef="usd">-414000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2566-wk-Fact-4D7B550FE2A82FA8DB4B1ECF8C105FA6"
      unitRef="usd">130000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2587-wk-Fact-E13B3CCA8BAB5D873F871ECF8C20908F"
      unitRef="usd">109019000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
    <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2606-wk-Fact-DEDBBCC373FF78513A521ECF8C0818C4"
      unitRef="usd">1738000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
    <us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2625-wk-Fact-36DAE40DDAFBBE236B641ECF8BFE052C"
      unitRef="usd">-85888000</us-gaap:CashAndCashEquivalentsPeriodIncreaseDecrease>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27587357e2648-wk-Fact-1BE67F1DB1C9712C8F741ECF8C02CD51"
      unitRef="usd">130373000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27587357e2667-wk-Fact-6B98B42768B990333DDE1ECF8BF77ED9"
      unitRef="usd">128635000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2016Q4"
      decimals="-3"
      id="d27587357e2686-wk-Fact-652D6B28FED168D4608D1ECF8BF9E455"
      unitRef="usd">214523000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27587357e2712-wk-Fact-AA5B5FA1A9ED64DB48E41ECF8C025952"
      unitRef="usd">239392000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27587357e2731-wk-Fact-1BE67F1DB1C9712C8F741ECF8C02CD51"
      unitRef="usd">130373000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27587357e2750-wk-Fact-6B98B42768B990333DDE1ECF8BF77ED9"
      unitRef="usd">128635000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:IncomeTaxesPaid
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27587357e2833-wk-Fact-B8CED07B11776A3B3A9C1ECF8C2558F7"
      unitRef="usd">22582000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27587357e2852-wk-Fact-336BE18B421742D0F1291ECF8C022489"
      unitRef="usd">39517000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27587357e2871-wk-Fact-3600822C222BAF2D35CD1ECF8C1109B6"
      unitRef="usd">25879000</us-gaap:IncomeTaxesPaid>
    <us-gaap:NatureOfOperations
      contextRef="FD2019Q4YTD"
      id="TextSelection-1D6A0D552DA772D02BD01ECF8C40A0BE-0-wk-Fact-086DE3A7BED792DCDDE71ECF8BE23DBC">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;1.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Nature of the Business&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;iRobot Corporation ("iRobot" or the "Company") designs and builds robots that empower people to do more. The Company develops robotic technology and applies it to produce and market consumer robots. The Company&#x2019;s revenue is primarily generated from product sales through distributor and retail sales channels, as well as its on-line stores.&lt;/span&gt;&lt;/div&gt;</us-gaap:NatureOfOperations>
    <us-gaap:SignificantAccountingPoliciesTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-ACD90165F072B23F4E2A1ECF8C428F08-0-wk-Fact-7D223B940233CEEDF9101ECF8B91B5F9">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;2.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Summary of Significant Accounting Policies&lt;/span&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:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Basis of Presentation and Foreign Currency Translation&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The accompanying consolidated financial statements include those of iRobot and its subsidiaries, after elimination of all intercompany balances and transactions. iRobot has prepared the accompanying consolidated financial statements in conformity with accounting principles generally accepted in the United States of America ("GAAP"). In addition, certain prior year amounts have been reclassified to conform to the current year presentation.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For the Company's subsidiaries that transact in a functional currency other than the U.S. dollar, assets and liabilities are translated into U.S. dollars at period-end foreign exchange rates. Revenues and expenses are translated into U.S. dollars at the average foreign exchange rates for the period. Translation adjustments are excluded from the determination of net income and are recorded in accumulated other comprehensive income (loss), a separate component of stockholders' equity.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company operates and reports using a 52-53&#160;week fiscal year ending on the Saturday closest to December&#160;31. Accordingly, the Company&#x2019;s fiscal quarters end on the Saturday that falls closest to the last day of the third month of each quarter.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The preparation of these financial statements in conformity with GAAP requires the Company to make estimates and assumptions that affect the reported amounts of assets and liabilities and revenue and expenses. These estimates and judgments, include but are not limited to, revenue recognition, including performance obligations, variable consideration and other obligations such as product returns and incentives; warranty costs; valuation of goodwill and acquired intangible assets; valuation of financial instruments; accounting for business combinations; evaluating loss contingencies; accounting for stock-based compensation including performance-based assessments; and accounting for income taxes and related valuation allowances. The Company bases these estimates and judgments on historical experience, market participant fair value considerations, projected future cash flows and various other factors that the Company believes are reasonable under the circumstances. Actual results may differ from the Company&#x2019;s estimates.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Business Combinations &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company accounts for transactions that represent business combinations under the acquisition method of accounting. The Company allocates the total consideration paid for each acquisition to the assets it acquires and liabilities it assumes based on their fair values as of the date of acquisition, including identifiable intangible assets. The Company bases the fair value of identifiable intangible assets acquired in a business combination on valuations that use information and assumptions determined by management and which consider management&#x2019;s best estimates of inputs and assumptions that a market participant would use. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the business combination date, its estimates and assumptions are inherently uncertain and subject to refinement. As a result, during the measurement period, which is generally one year from the acquisition date, any adjustment to the assets acquired and liabilities assumed is recorded against goodwill in the period in which the amount is determined. Any adjustment identified subsequent to the measurement period is included in operating results in the period in which the amount is determined.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company considers all highly liquid investments with maturity of three months or less at the time of purchase to be cash and cash equivalents. The Company invests its excess cash primarily in money market funds or demand deposit accounts of major financial institutions. Accordingly, its cash and cash equivalents are subject to minimal credit and market risk. At &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, cash and cash equivalents totaled &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$239.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$130.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. These cash and cash equivalents are carried at cost, which approximates fair value.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Short Term Investments&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s investments are classified as available-for-sale and are recorded at fair value with any unrealized gain or loss recorded as an element of stockholders&#x2019; equity. The fair value of investments is determined based on quoted market prices at the reporting date for those instruments. Investments consisted of the following (in thousands):&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:45%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair&lt;br/&gt;Market&#160;Value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair&lt;br/&gt;Market&#160;Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Corporate and government bonds&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,016&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;30,035&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;29,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Convertible note&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total short term investments&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,016&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,035&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,605&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company&#x2019;s investments had maturity dates ranging from February 2020 to March 2021. The Company invests primarily in investment grade securities and limits the amount of investment in any single issuer.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Accounts receivable allowances&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Allowance for product returns&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;: The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Allowance for other credits and incentives: &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company records an allowance related to customer incentives such as discounts, promotions, price protection and other support programs. The allowance is based on specific terms and conditions included in customer agreements, specific programs and historical experience.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Allowance for doubtful accounts&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;: The Company records an allowance for doubtful accounts for the estimated amount of accounts receivable that may not be collected based on an assessment of the potential risk of loss associated with delinquent accounts. The allowance including the activity within the allowance was immaterial for fiscal years 2019, 2018 and 2017. The balance at December 28, 2019 was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Activity related to accounts receivable allowances was as follows (in thousands):&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Allowance for product returns&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53,920&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;42,693&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,673&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Acquired balance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,088&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Provision&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,575&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;68,476&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(68,217&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(56,164&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(43,831&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other adjustments&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,087&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,085&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,218&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;55,191&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53,920&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;42,693&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Allowance for other credits and incentives&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;97,737&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;61,359&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Acquired balance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,932&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Adjustment related to adoption of ASC 606&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,192&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Provision&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;287,891&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;198,371&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;110,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(247,775&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(161,672&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(81,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other adjustments&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,807&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,513&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,567&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;134,046&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;97,737&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;61,359&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Inventory&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory is stated at the lower of cost or net realizable value with cost being determined using the first-in, first-out method. The Company maintains a reserve for inventory items to provide for an estimated amount of excess or obsolete inventory.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Warranty&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company typically provides a one-year or two-year warranty against defects in materials and workmanship and will either repair the goods, provide replacement products or refund amounts to the customer for defective product. The Company records estimated warranty costs based on historical experience, at the time revenue is recognized.  Actual results could differ from these estimates, which could cause increases or decreases to the warranty reserves in future periods.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Property and Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment are recorded at cost and consist primarily of computer equipment, leasehold improvements, business applications software, tooling and machinery. Depreciation is computed using the straight-line method over the estimated useful lives as follows:&lt;/span&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="3"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:40%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Estimated Useful&#160;Life&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Computer and equipment&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2-5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Machinery and tooling&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2-5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Business applications software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;3-7&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Leasehold improvements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;Lesser of economic benefit period or term&#160;of&#160;lease&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Expenditures for additions and betterments of property and equipment are capitalized. Expenditures for repairs and maintenance are charged to expense as incurred. As assets are retired or sold, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recognized.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Goodwill and Other Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill represents the excess of the purchase price in a business combination over the fair value of the net tangible and intangible assets acquired. Goodwill is not amortized but rather is assessed for impairment at the reporting unit level annually during its fourth quarter of each fiscal year or more frequently if the Company believes indicators of impairment exist. Goodwill impairment, if any, is determined by comparing the reporting unit's fair value to its carrying value. An impairment loss is recognized in an amount equal to the excess of the reporting unit's carrying value over its fair value, up to the amount of goodwill allocated to the reporting unit.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other long-lived assets consist principally of completed technology, tradename, customer relationships, reacquired distribution rights and non-competition agreements. Reacquired distribution rights are amortized on an accelerated basis while all other intangible assets are amortized over their respective estimated useful lives on a straight-line basis, consistent with the pattern in which the economic benefits are being utilized. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company periodically evaluates the recoverability of other long-lived assets whenever events and changes in circumstances, such as reductions in demand or significant economic slowdowns in the industry, indicate that the carrying amount of an asset may not be fully recoverable. When indicators of impairment are present, the carrying values of the asset group are evaluated in relation to the future undiscounted cash flows of the underlying business. The net book value of the underlying asset is adjusted to fair value if the sum of the expected discounted cash flows is less than book value. Fair values are based on estimates of market prices and assumptions concerning the amount and timing of estimated future cash flows and assumed discount rates, reflecting varying degrees of perceived risk.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The impairment assessment of goodwill and other long-lived assets involves significant estimates and assumptions, which may be unpredictable and inherently uncertain. These estimates and assumptions include identification of reporting units and asset groups, long-term growth rates, profitability, estimated useful lives, comparable market multiples, and discount rates. Any changes in these assumptions could impact the result of the impairment assessment. There was no impairment of goodwill or other long-lived assets during fiscal 2019, 2018 and 2017.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Other Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company holds non-marketable equity securities as part of its strategic investments portfolio. The Company classifies the majority of these securities as equity securities without readily determinable fair values and measures these investments at cost, less any impairment, adjusted for observable price changes. These investments are valued using significant unobservable inputs or data in an inactive market and the valuation requires the Company's judgment due to the absence of market prices and inherent lack of liquidity. The estimated fair value is based on quantitative and qualitative factors including, but not limited to, subsequent financing activities by the investee and projected discounted cash flows. At&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, other assets consisted primarily of equity securities without readily determinable fair values and an equity method investment totaling&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$21.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$15.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. On October 17, 2019, the Company disposed of one of its non-marketable equity securities, resulting in a gain of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$8.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; which was recorded in other income, net. In January 2020, Teladoc Health, Inc. announced that it had entered into a definitive agreement to acquire InTouch Health, one of the Company's strategic investees, with an expected closing date of no later than June 30, 2020. The Company expects to record a gain in other income, net at closing.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Financial Instruments and Hedging Activities&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company utilizes derivative instruments to hedge specific financial risks including foreign exchange risk. The Company does not engage in speculative hedging activity. In order to account for a derivative instrument as a hedge, specific criteria must be met, including: (i) ensuring at the inception of the hedge that formal documentation exists for both the hedging relationship and the entity&#x2019;s risk management objective and strategy for undertaking the hedge and (ii) at the inception of the hedge and on an ongoing basis, the hedging relationship is expected to be highly effective in achieving offsetting changes in fair value attributed to the hedged risk during the period that the hedge is designated. Further, an assessment of effectiveness is required whenever financial statements or earnings are reported. Absent meeting these criteria, changes in fair value are recognized in other income, net, in the consolidated statements of income. Once the underlying forecasted transaction is realized, the gain or loss from the derivative designated as a hedge of the transaction is reclassified from accumulated other comprehensive income (loss) to the statement of income, in revenue or cost of revenue. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company accounts for certain assets and liabilities at fair value. The fair value is established based on a three-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value. These tiers include: &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:48px;padding-top:6px;text-indent:30px;"&gt;&lt;span style="padding-top:6px;font-family:inherit;font-size:10pt;padding-right:18px;"&gt;&#x2022;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 1 - observable inputs such as quoted prices for identical instruments in active markets; &lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:96px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:78px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 2 - inputs other than quoted prices in active markets that are either directly or indirectly observable; and &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:96px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:78px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 3 - unobservable inputs in which little or no market data exists, therefore requiring an entity to develop its own assumptions.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company accounts for stock-based compensation through recognition of the fair value of the stock-based compensation as a charge against earnings. The fair value of employee stock options is estimated at the grant date using the Black-Scholes option-pricing model. The fair value for time-based restricted stock units and performance-based restricted stock units is based on the closing share price of the Company's common stock on the date of grant. For performance-based restricted stock units, the compensation cost is recognized based on the number of units expected to vest upon the achievement of the performance conditions. The Company recognizes stock-based compensation as an expense on a straight-line basis, over the requisite service period. The Company accounts for forfeitures as they occur, rather than applying an estimated forfeiture rate.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Research and Development&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Costs incurred in the research and development of the Company&#x2019;s products are expensed as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Advertising Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company expenses advertising costs as they are incurred. During the years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; advertising expense totaled &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$125.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$114.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$91.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, and are recorded within the selling and marketing expenses in its consolidated statements of income. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax assets and liabilities are determined based on the difference between the financial statement and tax basis using enacted tax rates in effect in the years in which those temporary differences are expected to be recovered or settled in each jurisdiction. A valuation allowance is provided if, based upon the weight of available evidence, it is more likely than not that the related benefits will not be realized. The Company regularly reviews the deferred tax assets for recoverability considering historical profitability, projected future taxable income, future reversals of existing taxable temporary differences, as well as feasible tax planning strategies in each jurisdiction. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and December 30, 2017, the Company had a valuation allowance of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, for certain deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company reports a liability for unrecognized tax benefits resulting from uncertain tax positions taken or expected to be taken in a tax return. The Company recognizes interest and penalties, if any, related to unrecognized tax benefits in the income tax provision.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code of 1986, as amended (the "Internal Revenue Code"). Effective for the Company&#x2019;s 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign-Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of $11.9 million in the fourth quarter of 2017 which included a provisional amount of $8.9 million related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and $3.0 million related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and there were no material adjustments to the provisional amounts recorded.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Concentration of Credit Risk and Significant Customers&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Financial instruments which potentially expose the Company to concentrations of credit risk consist of accounts receivable and cash and cash equivalents. Management believes its credit policies are prudent and reflect normal industry terms and business risk. At &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;two&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; customers accounted for a total of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26.6%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23.1%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the Company's accounts receivable balance, respectively. For the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company generated &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21.3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17.3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13.5%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, of total revenue from one of its retailers (Amazon). &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company maintains its cash in bank deposit accounts and money market funds at high quality financial institutions. The individual balances, at times, may exceed federally insured limits. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Net Income Per Share&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic income per share is calculated using the Company's weighted-average outstanding common shares. Diluted income per share is calculated using the Company's weighted-average outstanding common shares including the dilutive effect of stock awards as determined under the treasury stock method. The following table presents the calculation of both basic and diluted net income per share:&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;85,300&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;87,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;50,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Weighted-average shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,097&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,692&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,611&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Dilutive effect of employee stock plans&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;638&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;948&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,142&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted weighted-average shares outstanding&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,735&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,640&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,753&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic income per share&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.04&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.18&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.85&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted income per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.97&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.07&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.77&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Restricted stock units and stock options representing approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares of common stock for the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, were excluded from the computation of diluted earnings per share as their effect would have been antidilutive. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Recently Adopted Accounting Standards&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In June 2018, the Financial Accounting Standards Board ("FASB") issued&#160;Accounting Standards Update ("ASU") No.&#160;2018-07,&#160;"Compensation - Stock Compensation: Improvements to Nonemployee Share-Based Payment Accounting&#160;(Topic 718)." The amendments in&#160;ASU&#160;No. 2018-07&#160;expand the scope of Topic 718&#160;to include share-based payments issued to nonemployees for goods or services. The amendments in this ASU are effective for annual periods beginning after December 15, 2018 and interim periods within those annual periods, with early adoption permitted. The Company adopted this standard effective December 30, 2018 which did not have a material impact on the Company's consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In February 2016, the FASB issued ASU No. 2016-02&#160;"Leases." This ASU and subsequently issued amendments require lessees to recognize the assets and liabilities on their balance sheet for the rights and obligations created by most leases and continue to recognize expenses on their income statements over the lease term.&#160;The standard also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows arising from leases. In July 2018, the FASB issued ASU No. 2018-11, "Leases (Topic 842): Targeted Improvements," which provide an alternative transition method that entities can elect when adopting the new standard. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company adopted the standard effective December 30, 2018 using the alternative transition method which resulted in the recognition of operating lease right-of-use assets and operating lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The Company's consolidated financial statements as of and for the year ended December&#160;28, 2019 are presented under the new standard, while the comparative fiscal years presented are not adjusted and continue to be reported in accordance with the historical accounting policy. See Note 4, "Leases," for the required disclosures related to the impact of adopting this standard and a discussion of the Company's updated policies related to lease accounting.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Recently Issued Accounting Standards&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In December 2019, the FASB issued ASU No. 2019-12, "Income Taxes - Simplifying the Accounting for Income Taxes." The ASU simplifies the accounting for income taxes by removing certain exceptions to the general principles as well as clarifying and amending existing guidance to improve consistent application. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020, with early adoption permitted. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective or prospective basis. The Company intends to adopt the ASU effective January 3, 2021, and is currently evaluating the impact to the consolidated financial statements. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In August 2018, the FASB issued ASU No. 2018-15, "Intangibles - Goodwill and Other Internal-Use Software." The new standard aligns 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 (and hosting arrangements that include an internal use software license). The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019, with early adoption permitted. Implementation should be applied either retrospectively or prospectively to all implementation costs incurred after the date of adoption. The Company intends to adopt the ASU using the prospective method effective December 29, 2019, and does not expect the new standard will have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In August 2018, the FASB issued ASU No. 2018-13, "Fair Value Measurement: Disclosure Framework&#x2014;Changes to the Disclosure Requirements for Fair Value Measurement." The amendment modifies disclosure requirements related to fair value measurement. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019. Implementation on a prospective or retrospective basis varies by specific disclosure requirement. Early adoption is permitted. The standard also allows for early adoption of any removed or modified disclosures upon issuance of this ASU while delaying adoption of the additional disclosures until their effective date. The Company does not believe this amendment will have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In June 2016, the FASB issued ASU No. 2016-13, "Measurement of Credit Losses on Financial Instruments," which amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments. This may result in the earlier recognition of allowances for losses. The guidance is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years, with early adoption permitted.&#160;The Company intends to adopt the ASU effective December 29, 2019. The Company does not believe the new standard will have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;From time to time, new accounting pronouncements are issued by FASB that are adopted by the Company as of the specified effective date. Unless otherwise discussed, the Company believes that recently issued standards, which are not yet effective, will not have a material impact on the Company&#x2019;s consolidated financial statements upon adoption.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-DC0DBDA573A4B947788B1ECF8C43EB03-0-wk-Fact-7383816661D7161144601ECF8B972AB5">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Basis of Presentation and Foreign Currency Translation&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The accompanying consolidated financial statements include those of iRobot and its subsidiaries, after elimination of all intercompany balances and transactions. iRobot has prepared the accompanying consolidated financial statements in conformity with accounting principles generally accepted in the United States of America ("GAAP"). In addition, certain prior year amounts have been reclassified to conform to the current year presentation.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For the Company's subsidiaries that transact in a functional currency other than the U.S. dollar, assets and liabilities are translated into U.S. dollars at period-end foreign exchange rates. Revenues and expenses are translated into U.S. dollars at the average foreign exchange rates for the period. Translation adjustments are excluded from the determination of net income and are recorded in accumulated other comprehensive income (loss), a separate component of stockholders' equity.&lt;/span&gt;&lt;/div&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:FiscalPeriod
      contextRef="FD2019Q4YTD"
      id="TextSelection-D840B69D0942247BEFB71ECF8C43101B-0-wk-Fact-4639210DB1FC82043D551ECF8C0372CA">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company operates and reports using a 52-53&#160;week fiscal year ending on the Saturday closest to December&#160;31. Accordingly, the Company&#x2019;s fiscal quarters end on the Saturday that falls closest to the last day of the third month of each quarter.&lt;/span&gt;&lt;/div&gt;</us-gaap:FiscalPeriod>
    <us-gaap:UseOfEstimates
      contextRef="FD2019Q4YTD"
      id="TextSelection-F4254E78986D99033C551ECF8C41D9DC-0-wk-Fact-D8B08943388F3288B8461ECF8B9AD152">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The preparation of these financial statements in conformity with GAAP requires the Company to make estimates and assumptions that affect the reported amounts of assets and liabilities and revenue and expenses. These estimates and judgments, include but are not limited to, revenue recognition, including performance obligations, variable consideration and other obligations such as product returns and incentives; warranty costs; valuation of goodwill and acquired intangible assets; valuation of financial instruments; accounting for business combinations; evaluating loss contingencies; accounting for stock-based compensation including performance-based assessments; and accounting for income taxes and related valuation allowances. The Company bases these estimates and judgments on historical experience, market participant fair value considerations, projected future cash flows and various other factors that the Company believes are reasonable under the circumstances. Actual results may differ from the Company&#x2019;s estimates.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <us-gaap:BusinessCombinationsPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-1969A94EE50E50CA050A1ECF8C42BB33-0-wk-Fact-0EBD1FA738ED32517D9F1ECF8B960C4C">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Business Combinations &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company accounts for transactions that represent business combinations under the acquisition method of accounting. The Company allocates the total consideration paid for each acquisition to the assets it acquires and liabilities it assumes based on their fair values as of the date of acquisition, including identifiable intangible assets. The Company bases the fair value of identifiable intangible assets acquired in a business combination on valuations that use information and assumptions determined by management and which consider management&#x2019;s best estimates of inputs and assumptions that a market participant would use. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the business combination date, its estimates and assumptions are inherently uncertain and subject to refinement. As a result, during the measurement period, which is generally one year from the acquisition date, any adjustment to the assets acquired and liabilities assumed is recorded against goodwill in the period in which the amount is determined. Any adjustment identified subsequent to the measurement period is included in operating results in the period in which the amount is determined.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-5AAD21A1C4366BBCF0B71ECF8C41C7B5-0-wk-Fact-6E895609F8048677D0071ECF8C03D662">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company considers all highly liquid investments with maturity of three months or less at the time of purchase to be cash and cash equivalents. The Company invests its excess cash primarily in money market funds or demand deposit accounts of major financial institutions. Accordingly, its cash and cash equivalents are subject to minimal credit and market risk. At &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, cash and cash equivalents totaled &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$239.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$130.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. These cash and cash equivalents are carried at cost, which approximates fair value.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27599394e745-wk-Fact-6807345744BC20FE80F41ECF8B951020"
      unitRef="usd">239400000</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27599394e749-wk-Fact-1AC173CD2BA6CFFE82911ECF8B9B5369"
      unitRef="usd">130400000</us-gaap:CashEquivalentsAtCarryingValue>
    <irbt:ShortTermInvestmentsPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-A279C12EA5B7421345DF1ECF8C40E93A-0-wk-Fact-1A5C9037C9D96F80D8761ECF8C0553AE">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Short Term Investments&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s investments are classified as available-for-sale and are recorded at fair value with any unrealized gain or loss recorded as an element of stockholders&#x2019; equity. The fair value of investments is determined based on quoted market prices at the reporting date for those instruments. Investments consisted of the following (in thousands):&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:45%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair&lt;br/&gt;Market&#160;Value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair&lt;br/&gt;Market&#160;Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Corporate and government bonds&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,016&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;30,035&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;29,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Convertible note&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total short term investments&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,016&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,035&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,605&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company&#x2019;s investments had maturity dates ranging from February 2020 to March 2021. The Company invests primarily in investment grade securities and limits the amount of investment in any single issuer.&lt;/span&gt;&lt;/div&gt;</irbt:ShortTermInvestmentsPolicyTextBlock>
    <us-gaap:AvailableForSaleSecuritiesTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-9DDEA74DD3C17466E2D91ECF8C411435-0-wk-Fact-1160143AECFE44BDC10F1ECF8B9CCAB6">&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:45%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair&lt;br/&gt;Market&#160;Value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair&lt;br/&gt;Market&#160;Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Corporate and government bonds&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,016&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;30,035&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;29,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Convertible note&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total short term investments&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,016&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,035&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,605&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:AvailableForSaleSecuritiesTextBlock>
    <us-gaap:AvailableForSaleSecuritiesAmortizedCost
      contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember"
      decimals="-3"
      id="d27599394e985-wk-Fact-B1F9D7AF1F257CFAAD271ECF8BF91EF1"
      unitRef="usd">17016000</us-gaap:AvailableForSaleSecuritiesAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember"
      decimals="-3"
      id="d27599394e1004-wk-Fact-E55D4AF895742A04B9CC1ECF8BF80850"
      unitRef="usd">17032000</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesAmortizedCost
      contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember"
      decimals="-3"
      id="d27599394e1023-wk-Fact-7841D9AEADB1B492AB4C1ECF8BF8CF03"
      unitRef="usd">30035000</us-gaap:AvailableForSaleSecuritiesAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_BondsMember"
      decimals="-3"
      id="d27599394e1043-wk-Fact-36469210EBD5EAE930F31ECF8BF73101"
      unitRef="usd">29605000</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesAmortizedCost
      contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember"
      decimals="-3"
      id="d27599394e1058-wk-Fact-EDFFF3F63AE25AFDAE0F1ECF8BF9A592"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2019Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember"
      decimals="-3"
      id="d27599394e1077-wk-Fact-325F118DE61BAB54927F1ECF8BFBA5C3"
      unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesAmortizedCost
      contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember"
      decimals="-3"
      id="d27599394e1096-wk-Fact-78BA89E64F3DD5390CAA1ECF8BF78A94"
      unitRef="usd">2000000</us-gaap:AvailableForSaleSecuritiesAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2018Q4_us-gaap_FinancialInstrumentAxis_us-gaap_ConvertibleDebtMember"
      decimals="-3"
      id="d27599394e1116-wk-Fact-1FD4BF45D59B3910DABD1ECF8BFB3A0B"
      unitRef="usd">2000000</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesAmortizedCost
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27599394e1141-wk-Fact-832464EE910B20D2443D1ECF8BFABBCC"
      unitRef="usd">17016000</us-gaap:AvailableForSaleSecuritiesAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27599394e1160-wk-Fact-331B0FD69B5949B7F76A1ECF8B9118DB"
      unitRef="usd">17032000</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesAmortizedCost
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27599394e1179-wk-Fact-D9E46CE9707BD574AD671ECF8BF8C507"
      unitRef="usd">32035000</us-gaap:AvailableForSaleSecuritiesAmortizedCost>
    <us-gaap:AvailableForSaleSecuritiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27599394e1199-wk-Fact-A4D6B258120F8233859E1ECF8C01C12E"
      unitRef="usd">31605000</us-gaap:AvailableForSaleSecuritiesCurrent>
    <us-gaap:ReceivablesPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-7CD20E1636AB18C8FA4B1ECF8C42F05C-0-wk-Fact-B5662FFAB51F25D450701ECF8B931714">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Accounts receivable allowances&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Allowance for product returns&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;: The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Allowance for other credits and incentives: &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company records an allowance related to customer incentives such as discounts, promotions, price protection and other support programs. The allowance is based on specific terms and conditions included in customer agreements, specific programs and historical experience.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Allowance for doubtful accounts&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;: The Company records an allowance for doubtful accounts for the estimated amount of accounts receivable that may not be collected based on an assessment of the potential risk of loss associated with delinquent accounts. The allowance including the activity within the allowance was immaterial for fiscal years 2019, 2018 and 2017. The balance at December 28, 2019 was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;</us-gaap:ReceivablesPolicyTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27599394e1303-wk-Fact-C37E805A5A06599BD8822FFED6FD0F86"
      unitRef="usd">1000000.0</us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables>
    <irbt:ScheduleOfAccountsReceivableAllowancesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-09B19C39115FAFA7F0661ECF8C4050F7-0-wk-Fact-A8E34F8AA263DC10DB991ECF8B9E2BE3">&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Activity related to accounts receivable allowances was as follows (in thousands):&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Allowance for product returns&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53,920&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;42,693&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,673&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Acquired balance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,088&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Provision&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,575&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;68,476&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(68,217&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(56,164&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(43,831&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other adjustments&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,087&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,085&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,218&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;55,191&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53,920&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;42,693&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Allowance for other credits and incentives&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;97,737&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;61,359&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23,658&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Acquired balance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,932&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Adjustment related to adoption of ASC 606&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,192&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Provision&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;287,891&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;198,371&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;110,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(247,775&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(161,672&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(81,269&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other adjustments&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,807&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,513&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,567&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;134,046&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;97,737&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;61,359&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</irbt:ScheduleOfAccountsReceivableAllowancesTableTextBlock>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1532-wk-Fact-DE0F159C6C34002232161ECF8BD7A880"
      unitRef="usd">53920000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1551-wk-Fact-0E66A616568CBC7F67DF1ECF8BD985C8"
      unitRef="usd">42693000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1570-wk-Fact-5CFA3C67648202FD06041ECF8BD963CD"
      unitRef="usd">27673000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1586-wk-Fact-E9835B286084034C77131ECF8BE2D75A"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1605-wk-Fact-2DA6CDF05EF143AC967E1ECF8BD8EFD8"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1624-wk-Fact-F1D7C94194845FA639A81ECF8BDB9276"
      unitRef="usd">6088000</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1645-wk-Fact-977232137F68BDAB6D9A1ECF8BE05762"
      unitRef="usd">71575000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1664-wk-Fact-EBF06800EF400082BD401ECF8BDA2A2E"
      unitRef="usd">68476000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1683-wk-Fact-6AFE51B239075AD93BE51ECF8BE345C8"
      unitRef="usd">54981000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1704-wk-Fact-122E0E67B19DC561E02D1ECF8BDA9F67"
      unitRef="usd">68217000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1724-wk-Fact-F94512A9D88A79BADC771ECF8BD81538"
      unitRef="usd">56164000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1744-wk-Fact-88784C2066C35C027CA21ECF8BE1E641"
      unitRef="usd">43831000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1766-wk-Fact-CC6862012BF042ECF9E61ECF8BDC5CF0"
      unitRef="usd">-2087000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1786-wk-Fact-E08E1CB88C6724645B9B1ECF8BD7E3B8"
      unitRef="usd">-1085000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1806-wk-Fact-609A0CE1D5FFD322CE151ECF8BE08677"
      unitRef="usd">-2218000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1833-wk-Fact-F6FD760ECBDB55CD3DBA1ECF8BE1911B"
      unitRef="usd">55191000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1852-wk-Fact-DE0F159C6C34002232161ECF8BD7A880"
      unitRef="usd">53920000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforproductreturnsMember"
      decimals="-3"
      id="d27599394e1871-wk-Fact-0E66A616568CBC7F67DF1ECF8BD985C8"
      unitRef="usd">42693000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2017-wk-Fact-2148BF45499EE4FD706A1ECF8BE18FD4"
      unitRef="usd">97737000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2036-wk-Fact-9E857D061804936A16951ECF8BDD32F4"
      unitRef="usd">61359000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2016Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2055-wk-Fact-5EEA097EC6F42099230B1ECF8BDBD931"
      unitRef="usd">23658000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2071-wk-Fact-7CFC8AE6A7FA9FB4C6ED1ECF8BDD9081"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2090-wk-Fact-135F0D45FC758CB415F51ECF8BE03249"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2109-wk-Fact-319CDAD03C77DE5A4A951ECF8BD7658F"
      unitRef="usd">11932000</us-gaap:ValuationAllowancesAndReservesReservesOfBusinessesAcquired>
    <us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2130-wk-Fact-C7B3CC3EEC2BFB1996BA1ECF8BDDBCBB"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts>
    <us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2149-wk-Fact-D416210E9F66273D25353A3770C18DE8"
      unitRef="usd">1192000</us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts>
    <us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2168-wk-Fact-D0DE7186A9E004D91E6E1ECF8BDF2A3F"
      unitRef="usd">0</us-gaap:ValuationAllowancesAndReservesChargedToOtherAccounts>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2189-wk-Fact-7B8643EC39DE608A35811ECF8BD9D5F0"
      unitRef="usd">287891000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2208-wk-Fact-073FC6DC30E8153C45A01ECF8BDC863D"
      unitRef="usd">198371000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2227-wk-Fact-7C6B4F1F56C49BC26A091ECF8BD8C162"
      unitRef="usd">110605000</us-gaap:ValuationAllowancesAndReservesChargedToCostAndExpense>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2248-wk-Fact-A18BE11F0666B1C6871F1ECF8BDEB08C"
      unitRef="usd">247775000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2268-wk-Fact-597663EDFED1AEE6B1F51ECF8BDEB02A"
      unitRef="usd">161672000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesDeductions
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2288-wk-Fact-03764C06149320F4E4431ECF8BDF1E00"
      unitRef="usd">81269000</us-gaap:ValuationAllowancesAndReservesDeductions>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="FD2019Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2310-wk-Fact-7A9978E3CE071F07D1851ECF8BE09E32"
      unitRef="usd">-3807000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="FD2018Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2330-wk-Fact-FADF311628B29B8C4C851ECF8BE368A4"
      unitRef="usd">-1513000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesAdjustments
      contextRef="FD2017Q4YTD_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2350-wk-Fact-3B499E218223595BF2421ECF8BDF02B6"
      unitRef="usd">-3567000</us-gaap:ValuationAllowancesAndReservesAdjustments>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2019Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2377-wk-Fact-9A84C53259EA44ADDEFD1ECF8BE21062"
      unitRef="usd">134046000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2018Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2396-wk-Fact-2148BF45499EE4FD706A1ECF8BE18FD4"
      unitRef="usd">97737000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:ValuationAllowancesAndReservesBalance
      contextRef="FI2017Q4_us-gaap_ValuationAllowancesAndReservesTypeAxis_irbt_AllowanceforothercreditsandincentivesMember"
      decimals="-3"
      id="d27599394e2415-wk-Fact-9E857D061804936A16951ECF8BDD32F4"
      unitRef="usd">61359000</us-gaap:ValuationAllowancesAndReservesBalance>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-1F9A0F721967616CB2B61ECF8C41F676-0-wk-Fact-7E3A37EBF8D941DF9FEB1ECF8B9DB873">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Inventory&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory is stated at the lower of cost or net realizable value with cost being determined using the first-in, first-out method. The Company maintains a reserve for inventory items to provide for an estimated amount of excess or obsolete inventory.&lt;/span&gt;&lt;/div&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:StandardProductWarrantyPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-166B793A58FAFF56BBB91ECF8C426A0A-0-wk-Fact-519D264C171740CCBEB61ECF8C0DB2D3">&lt;div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Warranty&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company typically provides a one-year or two-year warranty against defects in materials and workmanship and will either repair the goods, provide replacement products or refund amounts to the customer for defective product. The Company records estimated warranty costs based on historical experience, at the time revenue is recognized.  Actual results could differ from these estimates, which could cause increases or decreases to the warranty reserves in future periods.&lt;/span&gt;&lt;/div&gt;</us-gaap:StandardProductWarrantyPolicy>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-D00CF11139B4EBF9EF561ECF8C41C402-0-wk-Fact-A645D3D7CFA26DA434751ECF8B99031C">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Property and Equipment&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment are recorded at cost and consist primarily of computer equipment, leasehold improvements, business applications software, tooling and machinery. Depreciation is computed using the straight-line method over the estimated useful lives as follows:&lt;/span&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="3"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:40%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Estimated Useful&#160;Life&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Computer and equipment&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2-5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Machinery and tooling&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2-5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Business applications software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;3-7&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Leasehold improvements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;Lesser of economic benefit period or term&#160;of&#160;lease&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Expenditures for additions and betterments of property and equipment are capitalized. Expenditures for repairs and maintenance are charged to expense as incurred. As assets are retired or sold, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recognized.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B22AEB1AC9AF590B933D1ECF8C435CDC-0-wk-Fact-7B67B364A4CB4F9380531ECF8B9499CC">Depreciation is computed using the straight-line method over the estimated useful lives as follows:&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="3"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:40%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Estimated Useful&#160;Life&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Computer and equipment&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2-5 years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Machinery and tooling&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2-5&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Business applications software&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;3-7&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Leasehold improvements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;Lesser of economic benefit period or term&#160;of&#160;lease&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment consists of the following (in thousands):&lt;/span&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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:73%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Computer and equipment&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,588&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,339&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,494&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,231&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Machinery and tooling&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;79,213&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;60,281&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Leasehold improvements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;39,538&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,701&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Business applications software&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,933&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;15,638&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Subtotal&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;156,766&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;122,190&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Less: accumulated depreciation&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;80,778&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;65,164&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment, net&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;75,988&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;57,026&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <irbt:LeaseholdImprovementsTerms
      contextRef="FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember"
      id="d27599394e2611-wk-Fact-F618EEC9715649E629EF1ECF8B928CBB">Lesser of economic benefit period or term&#160;of&#160;lease</irbt:LeaseholdImprovementsTerms>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-5BE50032C2E1F568A80C1ECF8C429CB1-0-wk-Fact-3F8A7AD475B0C67A07D91ECF8B956B88">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Goodwill and Other Long-Lived Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill represents the excess of the purchase price in a business combination over the fair value of the net tangible and intangible assets acquired. Goodwill is not amortized but rather is assessed for impairment at the reporting unit level annually during its fourth quarter of each fiscal year or more frequently if the Company believes indicators of impairment exist. Goodwill impairment, if any, is determined by comparing the reporting unit's fair value to its carrying value. An impairment loss is recognized in an amount equal to the excess of the reporting unit's carrying value over its fair value, up to the amount of goodwill allocated to the reporting unit.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other long-lived assets consist principally of completed technology, tradename, customer relationships, reacquired distribution rights and non-competition agreements. Reacquired distribution rights are amortized on an accelerated basis while all other intangible assets are amortized over their respective estimated useful lives on a straight-line basis, consistent with the pattern in which the economic benefits are being utilized. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company periodically evaluates the recoverability of other long-lived assets whenever events and changes in circumstances, such as reductions in demand or significant economic slowdowns in the industry, indicate that the carrying amount of an asset may not be fully recoverable. When indicators of impairment are present, the carrying values of the asset group are evaluated in relation to the future undiscounted cash flows of the underlying business. The net book value of the underlying asset is adjusted to fair value if the sum of the expected discounted cash flows is less than book value. Fair values are based on estimates of market prices and assumptions concerning the amount and timing of estimated future cash flows and assumed discount rates, reflecting varying degrees of perceived risk.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The impairment assessment of goodwill and other long-lived assets involves significant estimates and assumptions, which may be unpredictable and inherently uncertain. These estimates and assumptions include identification of reporting units and asset groups, long-term growth rates, profitability, estimated useful lives, comparable market multiples, and discount rates. Any changes in these assumptions could impact the result of the impairment assessment. There was no impairment of goodwill or other long-lived assets during fiscal 2019, 2018 and 2017.&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:InvestmentPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-47E5BB63678CC45CC5BD1ECF8C420F62-0-wk-Fact-537D5601C8ADD88B9DF31ECF8BA03406">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Other Assets&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company holds non-marketable equity securities as part of its strategic investments portfolio. The Company classifies the majority of these securities as equity securities without readily determinable fair values and measures these investments at cost, less any impairment, adjusted for observable price changes. These investments are valued using significant unobservable inputs or data in an inactive market and the valuation requires the Company's judgment due to the absence of market prices and inherent lack of liquidity. The estimated fair value is based on quantitative and qualitative factors including, but not limited to, subsequent financing activities by the investee and projected discounted cash flows. At&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, other assets consisted primarily of equity securities without readily determinable fair values and an equity method investment totaling&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$21.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$15.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. On October 17, 2019, the Company disposed of one of its non-marketable equity securities, resulting in a gain of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$8.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; which was recorded in other income, net. In January 2020, Teladoc Health, Inc. announced that it had entered into a definitive agreement to acquire InTouch Health, one of the Company's strategic investees, with an expected closing date of no later than June 30, 2020. The Company expects to record a gain in other income, net at closing.&lt;/span&gt;&lt;/div&gt;</us-gaap:InvestmentPolicyTextBlock>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27599394e2704-wk-Fact-C292393153D07E86F3551ECF8BA1040C"
      unitRef="usd">21000000.0</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount>
    <us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27599394e2708-wk-Fact-0641CD0756EAF229E91F1ECF8BA3AA45"
      unitRef="usd">15100000</us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount>
    <us-gaap:GainLossOnSaleOfEquityInvestments
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27599394e2713-wk-Fact-95496A4AC263325491DB2FFAEA585CE8"
      unitRef="usd">8400000</us-gaap:GainLossOnSaleOfEquityInvestments>
    <us-gaap:DerivativesPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-8462E0EEC156D7FC4A9F1ECF8C43F422-0-wk-Fact-E6D8B6FF4D5D149F514A1ECF8C0F3278">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Financial Instruments and Hedging Activities&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company utilizes derivative instruments to hedge specific financial risks including foreign exchange risk. The Company does not engage in speculative hedging activity. In order to account for a derivative instrument as a hedge, specific criteria must be met, including: (i) ensuring at the inception of the hedge that formal documentation exists for both the hedging relationship and the entity&#x2019;s risk management objective and strategy for undertaking the hedge and (ii) at the inception of the hedge and on an ongoing basis, the hedging relationship is expected to be highly effective in achieving offsetting changes in fair value attributed to the hedged risk during the period that the hedge is designated. Further, an assessment of effectiveness is required whenever financial statements or earnings are reported. Absent meeting these criteria, changes in fair value are recognized in other income, net, in the consolidated statements of income. Once the underlying forecasted transaction is realized, the gain or loss from the derivative designated as a hedge of the transaction is reclassified from accumulated other comprehensive income (loss) to the statement of income, in revenue or cost of revenue. &lt;/span&gt;&lt;/div&gt;</us-gaap:DerivativesPolicyTextBlock>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-9D05DBCFE229850FFBA71ECF8C436E39-0-wk-Fact-3EB1F7AADAB98E10E1841ECF8BFF6E7E">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company accounts for certain assets and liabilities at fair value. The fair value is established based on a three-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value. These tiers include: &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:48px;padding-top:6px;text-indent:30px;"&gt;&lt;span style="padding-top:6px;font-family:inherit;font-size:10pt;padding-right:18px;"&gt;&#x2022;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 1 - observable inputs such as quoted prices for identical instruments in active markets; &lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:96px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:78px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 2 - inputs other than quoted prices in active markets that are either directly or indirectly observable; and &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:78px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#x2022;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 3 - unobservable inputs in which little or no market data exists, therefore requiring an entity to develop its own assumptions.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-AEE58EA80488661012271ECF8C415025-0-wk-Fact-7C5D10E76BCD1B2795061ECF8B9AF0DE">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company accounts for stock-based compensation through recognition of the fair value of the stock-based compensation as a charge against earnings. The fair value of employee stock options is estimated at the grant date using the Black-Scholes option-pricing model. The fair value for time-based restricted stock units and performance-based restricted stock units is based on the closing share price of the Company's common stock on the date of grant. For performance-based restricted stock units, the compensation cost is recognized based on the number of units expected to vest upon the achievement of the performance conditions. The Company recognizes stock-based compensation as an expense on a straight-line basis, over the requisite service period. The Company accounts for forfeitures as they occur, rather than applying an estimated forfeiture rate.&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:ResearchAndDevelopmentExpensePolicy
      contextRef="FD2019Q4YTD"
      id="TextSelection-E92D4CBB1F6C590DF4131ECF8C41FAA8-0-wk-Fact-15D709D1BD6D7CEC8D161ECF8B91CA5C">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Research and Development&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Costs incurred in the research and development of the Company&#x2019;s products are expensed as incurred.&lt;/span&gt;&lt;/div&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:AdvertisingCostsPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-06E0C9F9626BBD4736701ECF8C420010-0-wk-Fact-ED24D644B969A7CED3B61ECF8C02C8ED">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Advertising Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company expenses advertising costs as they are incurred. During the years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; advertising expense totaled &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$125.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$114.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$91.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, and are recorded within the selling and marketing expenses in its consolidated statements of income. &lt;/span&gt;&lt;/div&gt;</us-gaap:AdvertisingCostsPolicyTextBlock>
    <us-gaap:AdvertisingExpense
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27599394e2837-wk-Fact-682D96A50AAD241392151ECF8B9E8FA7"
      unitRef="usd">125000000.0</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27599394e2841-wk-Fact-D485BA4D438A0315DEF51ECF8B9BD8AA"
      unitRef="usd">114000000.0</us-gaap:AdvertisingExpense>
    <us-gaap:AdvertisingExpense
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27599394e2846-wk-Fact-364C878EC734E162E8EA1ECF8B9F4D62"
      unitRef="usd">91800000</us-gaap:AdvertisingExpense>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-3B8E033DCBDBC3CE863F1ECF8C420421-0-wk-Fact-7E76F671C8C7D27C78D71ECF8C065C3F">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax assets and liabilities are determined based on the difference between the financial statement and tax basis using enacted tax rates in effect in the years in which those temporary differences are expected to be recovered or settled in each jurisdiction. A valuation allowance is provided if, based upon the weight of available evidence, it is more likely than not that the related benefits will not be realized. The Company regularly reviews the deferred tax assets for recoverability considering historical profitability, projected future taxable income, future reversals of existing taxable temporary differences, as well as feasible tax planning strategies in each jurisdiction. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and December 30, 2017, the Company had a valuation allowance of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, for certain deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company reports a liability for unrecognized tax benefits resulting from uncertain tax positions taken or expected to be taken in a tax return. The Company recognizes interest and penalties, if any, related to unrecognized tax benefits in the income tax provision.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code of 1986, as amended (the "Internal Revenue Code"). Effective for the Company&#x2019;s 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign-Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of $11.9 million in the fourth quarter of 2017 which included a provisional amount of $8.9 million related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and $3.0 million related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and there were no material adjustments to the provisional amounts recorded.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27599394e2870-wk-Fact-6E9281150BF1BFDAA0841ECF8B95D50C"
      unitRef="usd">3800000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27599394e2874-wk-Fact-21156A7A99DFAA8E9A881ECF8B91B85E"
      unitRef="usd">1100000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2017Q4"
      decimals="-5"
      id="d27599394e2878-wk-Fact-1D479B52ED490C19B1AE1ECF8B9287BB"
      unitRef="usd">800000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:ConcentrationRiskDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-FBBE44201493D380598B1ECF8C4105AA-0-wk-Fact-73473BCEFFAB04E8ED981ECF8B92571C">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Concentration of Credit Risk and Significant Customers&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Financial instruments which potentially expose the Company to concentrations of credit risk consist of accounts receivable and cash and cash equivalents. Management believes its credit policies are prudent and reflect normal industry terms and business risk. At &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;two&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; customers accounted for a total of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26.6%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23.1%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the Company's accounts receivable balance, respectively. For the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company generated &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21.3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17.3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13.5%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, of total revenue from one of its retailers (Amazon). &lt;/span&gt;&lt;/div&gt;The Company maintains its cash in bank deposit accounts and money market funds at high quality financial institutions. The individual balances, at times, may exceed federally insured limits.</us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27599394e2917-wk-Fact-3A00533F8F253CAD77D61ECF8B934E0C"
      unitRef="number">0.266</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_TwoCustomersMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_AccountsReceivableMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27599394e2921-wk-Fact-4027027AB8F0B1E170A535EB8F94AF25"
      unitRef="number">0.231</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27599394e2938-wk-Fact-ED14B6DDEE939662FF511ECF8BA09D9E"
      unitRef="number">0.213</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27599394e2942-wk-Fact-32DB3A8BE91F98C342C21ECF8BFF3D7A"
      unitRef="number">0.173</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27599394e2946-wk-Fact-479A5FCB40C7377A4B3820EDC5D6089C"
      unitRef="number">0.135</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:EarningsPerSharePolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-F62420BF0748771E00E21ECF8C409FE7-0-wk-Fact-DB042CEC2EB3FAC95E0F1ECF8C07CF19">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Net Income Per Share&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic income per share is calculated using the Company's weighted-average outstanding common shares. Diluted income per share is calculated using the Company's weighted-average outstanding common shares including the dilutive effect of stock awards as determined under the treasury stock method. The following table presents the calculation of both basic and diluted net income per share:&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;85,300&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;87,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;50,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Weighted-average shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,097&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,692&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,611&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Dilutive effect of employee stock plans&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;638&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;948&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,142&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted weighted-average shares outstanding&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,735&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,640&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,753&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic income per share&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.04&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.18&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.85&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted income per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.97&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.07&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.77&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Restricted stock units and stock options representing approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares of common stock for the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;, respectively, were excluded from the computation of diluted earnings per share as their effect would have been antidilutive.</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-9483564F9D548AD2D7CD1ECF8C436F49-0-wk-Fact-9DF33B16F58907CEDA661ECF8C03750D">The following table presents the calculation of both basic and diluted net income per share:&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;85,300&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;87,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;50,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Weighted-average shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,097&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,692&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;27,611&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Dilutive effect of employee stock plans&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;638&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;948&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,142&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted weighted-average shares outstanding&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,735&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,640&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,753&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic income per share&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.04&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.18&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.85&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted income per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.97&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.07&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.77&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27599394e3173-wk-Fact-0772F30DE6FB750713961ECF8C2C26EB"
      unitRef="usd">85300000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27599394e3192-wk-Fact-FCFF15B705B902AA627F1ECF8BC6FDEE"
      unitRef="usd">87992000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27599394e3211-wk-Fact-8D100CD98A3C52548D671ECF8C1733AE"
      unitRef="usd">50964000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27599394e3227-wk-Fact-74F5245149CE79111EAC1ECF8C2C0770"
      unitRef="shares">28097000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27599394e3246-wk-Fact-887416FC7A4B00F3B6331ECF8C14B1E8"
      unitRef="shares">27692000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27599394e3265-wk-Fact-B4142115B6E2E0E768601ECF8C197AE3"
      unitRef="shares">27611000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27599394e3286-wk-Fact-AA30E3C68F09DF7C946B1ECF8C1E1E27"
      unitRef="shares">638000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27599394e3305-wk-Fact-6748F3A8C0DD22BEFCCD1ECF8C1DE1F8"
      unitRef="shares">948000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27599394e3324-wk-Fact-7E29CC47B7446BFADC7D1ECF8C26F998"
      unitRef="shares">1142000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27599394e3345-wk-Fact-3400E7FA01B76C78B8141ECF8C194494"
      unitRef="shares">28735000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27599394e3364-wk-Fact-9D4BCD49EE27BC5D19911ECF8BCBEAAF"
      unitRef="shares">28640000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27599394e3383-wk-Fact-1672EE9525AC62469A941ECF8C06E2C6"
      unitRef="shares">28753000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d27599394e3409-wk-Fact-4EA4B5D2424F553CAF431ECF8C0E8F54"
      unitRef="usdPerShare">3.04</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d27599394e3428-wk-Fact-FE33DC5020FD0D6DAE2C1ECF8C23CC4F"
      unitRef="usdPerShare">3.18</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27599394e3447-wk-Fact-BB8B39A2D003DD0E29AD1ECF8BCD70AF"
      unitRef="usdPerShare">1.85</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d27599394e3468-wk-Fact-943D1DF1A869B1A145301ECF8BCDE983"
      unitRef="usdPerShare">2.97</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d27599394e3487-wk-Fact-7706267A6D11A924F1B91ECF8C2C9748"
      unitRef="usdPerShare">3.07</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27599394e3506-wk-Fact-09F8AEEA4540A4A741A71ECF8C04C5E7"
      unitRef="usdPerShare">1.77</us-gaap:EarningsPerShareDiluted>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27599394e3525-wk-Fact-6F8BDD1508CB9F61211B1ECF8B98E5AE"
      unitRef="shares">200000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27599394e3529-wk-Fact-C883BD8E14BB230005091ECF8B94224A"
      unitRef="shares">0.0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27599394e3533-wk-Fact-A4680C18DD284AB5CE111ECF8B9768AD"
      unitRef="shares">0.0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B51FBBD2A005537A30F91ECF8C42C87E-0-wk-Fact-4961399A2E8D58FF91441ECF8B9FC319">&lt;div style="line-height:120%;padding-top:6px;text-indent:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Recently Adopted Accounting Standards&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In June 2018, the Financial Accounting Standards Board ("FASB") issued&#160;Accounting Standards Update ("ASU") No.&#160;2018-07,&#160;"Compensation - Stock Compensation: Improvements to Nonemployee Share-Based Payment Accounting&#160;(Topic 718)." The amendments in&#160;ASU&#160;No. 2018-07&#160;expand the scope of Topic 718&#160;to include share-based payments issued to nonemployees for goods or services. The amendments in this ASU are effective for annual periods beginning after December 15, 2018 and interim periods within those annual periods, with early adoption permitted. The Company adopted this standard effective December 30, 2018 which did not have a material impact on the Company's consolidated financial statements and related disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In February 2016, the FASB issued ASU No. 2016-02&#160;"Leases." This ASU and subsequently issued amendments require lessees to recognize the assets and liabilities on their balance sheet for the rights and obligations created by most leases and continue to recognize expenses on their income statements over the lease term.&#160;The standard also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows arising from leases. In July 2018, the FASB issued ASU No. 2018-11, "Leases (Topic 842): Targeted Improvements," which provide an alternative transition method that entities can elect when adopting the new standard. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company adopted the standard effective December 30, 2018 using the alternative transition method which resulted in the recognition of operating lease right-of-use assets and operating lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The Company's consolidated financial statements as of and for the year ended December&#160;28, 2019 are presented under the new standard, while the comparative fiscal years presented are not adjusted and continue to be reported in accordance with the historical accounting policy. See Note 4, "Leases," for the required disclosures related to the impact of adopting this standard and a discussion of the Company's updated policies related to lease accounting.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Recently Issued Accounting Standards&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In December 2019, the FASB issued ASU No. 2019-12, "Income Taxes - Simplifying the Accounting for Income Taxes." The ASU simplifies the accounting for income taxes by removing certain exceptions to the general principles as well as clarifying and amending existing guidance to improve consistent application. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020, with early adoption permitted. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective or prospective basis. The Company intends to adopt the ASU effective January 3, 2021, and is currently evaluating the impact to the consolidated financial statements. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In August 2018, the FASB issued ASU No. 2018-15, "Intangibles - Goodwill and Other Internal-Use Software." The new standard aligns 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 (and hosting arrangements that include an internal use software license). The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019, with early adoption permitted. Implementation should be applied either retrospectively or prospectively to all implementation costs incurred after the date of adoption. The Company intends to adopt the ASU using the prospective method effective December 29, 2019, and does not expect the new standard will have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In August 2018, the FASB issued ASU No. 2018-13, "Fair Value Measurement: Disclosure Framework&#x2014;Changes to the Disclosure Requirements for Fair Value Measurement." The amendment modifies disclosure requirements related to fair value measurement. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019. Implementation on a prospective or retrospective basis varies by specific disclosure requirement. Early adoption is permitted. The standard also allows for early adoption of any removed or modified disclosures upon issuance of this ASU while delaying adoption of the additional disclosures until their effective date. The Company does not believe this amendment will have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In June 2016, the FASB issued ASU No. 2016-13, "Measurement of Credit Losses on Financial Instruments," which amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments. This may result in the earlier recognition of allowances for losses. The guidance is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years, with early adoption permitted.&#160;The Company intends to adopt the ASU effective December 29, 2019. The Company does not believe the new standard will have a material impact on its consolidated financial statements.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;From time to time, new accounting pronouncements are issued by FASB that are adopted by the Company as of the specified effective date. Unless otherwise discussed, the Company believes that recently issued standards, which are not yet effective, will not have a material impact on the Company&#x2019;s consolidated financial statements upon adoption.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-E958B8658F411173ED991ECF8C44B79E-0-wk-Fact-297876626B80FCC598BB1ECF8C2E43CD">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;3.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Revenue Recognition&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company primarily derives its revenue from product sales. The Company sells products directly to consumers through on-line stores and indirectly through resellers and distributors. Revenue is recognized upon transfer of control of promised products or services to customers, generally as title and risk of loss pass, in an amount that reflects the consideration the Company expects to receive in exchange for those products or services. Revenue is recognized only to the extent that it is probable that a significant reversal of revenue will not occur. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from revenue. Shipping and handling expenses are considered fulfillment activities and are expensed as incurred.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s product portfolio includes various consumer robots, many of which are Wi-Fi connected. The consumer robots are generally highly dependent on, and interrelated with, the embedded software and cannot function without the software. As such, the consumer robots are accounted for as a single performance obligation, and the revenue is recognized at a point in time when the control is transferred to distributors, resellers or directly to end customers through online stores. For consumer robots with Wi-Fi capability ("connected robots"), each sale represents an arrangement with multiple promises consisting of the robot, an app, cloud services and potential future unspecified software upgrades. The Company has determined that the app, cloud services and potential future unspecified software upgrades represent one promised service to the customer to enhance the functionality and interaction with the robot (referred to collectively as "Cloud Services"). &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Prior to the adoption of ASU No. 2014-09, "Revenue from Contracts with Customers," ("ASC 606") on December 31, 2017, the beginning of fiscal year 2018, the revenue allocated to the Cloud Services was deferred and recognized on a straight-line basis over the expected life of the connected robot. On December 31, 2017, the Company adopted ASC 606 using the modified retrospective method applied to those contracts that were not completed as of the adoption date. Upon ASC 606, the Company concluded that, on a quantitative and qualitative basis, the Cloud Services did not constitute a material performance obligation for the then existing products and, as such, these services were not considered a separate performance obligation that required allocation of transaction price. Under the modified retrospective method, the Company recognized the cumulative effect of the adoption and recorded a net increase of $1.0 million to the beginning retained earnings as of December 31, 2017. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;During the third quarter of 2018, the Company launched Roomba i7 and i7+ which brought a new level of intelligence and automation to robotic vacuum cleaners with the ability to learn, map and adapt to a home's floor plan. The Company has concluded that beginning with this launch, the Cloud Services related to these new products are a material performance obligation. For contracts that contain multiple performance obligations, the transaction price is allocated to each performance obligation based on a relative standalone selling price ("SSP"). The SSP reflects the Company's best estimate of what the selling prices of elements would be if they were sold regularly on a standalone basis. Revenue allocated to the robots is recognized at a point in time when control is transferred. Revenue allocated to the Cloud Services is deferred and recognized on a straight-line basis over the estimated period the software upgrades and services are expected to be provided. For contracts with a duration of greater than one year, the transaction price allocated to performance obligations that are unsatisfied as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; are not material. The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected duration of one year or less.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s products generally carry a one-year or two-year limited warranty that promises customers that delivered products are as specified. The Company does not consider these assurance-type warranties as a separate performance obligation and therefore, the Company accounts for such warranties under ASC 460,&#160;"Guarantees."&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company provides limited rights of returns for direct-to-consumer sales generated through its on-line stores and certain resellers and distributors. The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns. In addition, the Company may provide other credits or incentives which are accounted for as variable consideration when estimating the amount of revenue to recognize. Where appropriate, these estimates take into consideration relevant factors such as the Company&#x2019;s historical experience, current contractual requirements, specific known market events and forecasted inventory level in the channels. Overall, these reserves reflect the Company&#x2019;s best estimates, and the actual amounts of consideration ultimately received may differ from the Company&#x2019;s estimates. Returns and credits are estimated at contract inception and updated at the end of each reporting period as additional information becomes available.  As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company has reserves for product returns of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$55.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and other credits and incentives of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$134.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company had reserves for product returns of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$53.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and other credits and incentives of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$97.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. Revenue recognized during the years ended December 28, 2019 and December 29, 2018 related to performance obligations satisfied in a prior period was not material. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table provides information about disaggregated revenue by geographical region (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:58%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;United States&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;603,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;560,995&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;EMEA&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;357,760&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;311,659&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;252,632&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;219,930&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,214,010&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,092,584&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Contract Balances &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table provides information about receivables and contract liabilities from contracts with customers (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:57%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts receivable, net&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;146,161&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;162,166&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Contract liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,991&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,756&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company invoices customers based upon contractual billing schedules, and accounts receivable are recorded when the right to consideration becomes unconditional. Contract liabilities primarily relate to prepayments received from customers in advance of product shipments. The change in the opening and closing balances of the Company&#x2019;s contract assets and contract liabilities primarily results from the timing difference between the Company&#x2019;s performance and the customer&#x2019;s payment. During the years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company recognized &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, of the contract liability balance as revenue upon transfer of the products to customers. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Practical Expedients and Exemptions&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company generally expenses sales commissions when incurred because the amortization period is generally one year or less. These costs are recorded within sales and marketing expenses.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company does not assess whether a prepayment received represents a significant financing component as the period between when the payment is received and the transfer of the products to the customer is generally one year or less.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected duration of one year or less.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <irbt:Refundliabilityproductreturns
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27594034e663-wk-Fact-08A9C020767BFD1CDC371ECF8C17DCFA"
      unitRef="usd">55200000</irbt:Refundliabilityproductreturns>
    <irbt:Refundliabilityothercreditsandincentives
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27594034e667-wk-Fact-2E20B2689AB5CAFB92E91ECF8C0C243A"
      unitRef="usd">134000000.0</irbt:Refundliabilityothercreditsandincentives>
    <irbt:Refundliabilityproductreturns
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27594034e675-wk-Fact-45532713CCC0314D2D401ECF8C1D090F"
      unitRef="usd">53900000</irbt:Refundliabilityproductreturns>
    <irbt:Refundliabilityothercreditsandincentives
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27594034e680-wk-Fact-0612B2E98453AE2D867E1ECF8C09A193"
      unitRef="usd">97700000</irbt:Refundliabilityothercreditsandincentives>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-EBA913E142490E6414D01ECF8C44FE0C-0-wk-Fact-903D6027B36E1CBBF16C1ECF8B938601">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Disaggregation of Revenue&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table provides information about disaggregated revenue by geographical region (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:58%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;United States&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;603,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;560,995&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;EMEA&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;357,760&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;311,659&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;252,632&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;219,930&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,214,010&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,092,584&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_country_US"
      decimals="-3"
      id="d27594034e758-wk-Fact-84FBA43C779765FDFAB51ECF8B99C6F7"
      unitRef="usd">603618000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_country_US"
      decimals="-3"
      id="d27594034e772-wk-Fact-2D48EEBF3BED10F0A77820F8182AC9D0"
      unitRef="usd">560995000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember"
      decimals="-3"
      id="d27594034e787-wk-Fact-1A395C3089C7AB3961B31ECF8B9BBE54"
      unitRef="usd">357760000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_EMEAMember"
      decimals="-3"
      id="d27594034e801-wk-Fact-4403E6E069FF17BBBFD520F848C42F56"
      unitRef="usd">311659000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember"
      decimals="-3"
      id="d27594034e821-wk-Fact-D728F117DF8E221BA07D1ECF8B9AF3EA"
      unitRef="usd">252632000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_irbt_AllOtherRegionsMember"
      decimals="-3"
      id="d27594034e835-wk-Fact-FBD153A38DB5443EC24220F877D17B92"
      unitRef="usd">219930000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:Revenues
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27594034e860-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49"
      unitRef="usd">1214010000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27594034e874-wk-Fact-989EE34444750D4496461ECF8BCC77EC"
      unitRef="usd">1092584000</us-gaap:Revenues>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-1DFA172846CC787AB31C1ECF8C43A036-0-wk-Fact-50EF83DADAEF2B6856F31ECF8C2F6CA5">&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Contract Balances &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table provides information about receivables and contract liabilities from contracts with customers (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:57%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts receivable, net&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;146,161&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;162,166&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Contract liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,991&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,756&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company invoices customers based upon contractual billing schedules, and accounts receivable are recorded when the right to consideration becomes unconditional. Contract liabilities primarily relate to prepayments received from customers in advance of product shipments. The change in the opening and closing balances of the Company&#x2019;s contract assets and contract liabilities primarily results from the timing difference between the Company&#x2019;s performance and the customer&#x2019;s payment. During the years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company recognized &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, of the contract liability balance as revenue upon transfer of the products to customers. &lt;/span&gt;&lt;/div&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:AccountsAndOtherReceivablesNetCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594034e962-wk-Fact-533C478FD3AB27E53CF21ECF8BFC7249"
      unitRef="usd">146161000</us-gaap:AccountsAndOtherReceivablesNetCurrent>
    <us-gaap:AccountsAndOtherReceivablesNetCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27594034e981-wk-Fact-1266FAB35552695887F91ECF8B9F1522"
      unitRef="usd">162166000</us-gaap:AccountsAndOtherReceivablesNetCurrent>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594034e996-wk-Fact-676227EFE70098601A1C1ECF8C0B91D4"
      unitRef="usd">6991000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27594034e1015-wk-Fact-021B737E6E1D4193BC141ECF8C0BF50E"
      unitRef="usd">5756000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27594034e1037-wk-Fact-50362AB9DE81AA2F4AC5300953C622BA"
      unitRef="usd">5800000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27594034e1041-wk-Fact-1F6A93285F8ADE1C2FB91ECF8C1BD3AF"
      unitRef="usd">6700000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-C13D558467784F25EE87ECA9D25B9827-0-wk-Fact-620CBB63F25CF630D2ACECAC1029F251">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;4.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Leases&lt;/span&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;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company's leasing arrangements primarily consist of operating leases for its facilities which include corporate, sales and marketing and research and development offices. For leases with terms greater than 12 months, the Company records the related right-of-use asset and lease obligation at the present value of lease payments over the term. The Company's leases typically include rental escalation clauses, renewal options and/or termination options that are factored into the determination of lease payments when appropriate. The Company does not separate lease and nonlease components of contracts and excludes all variable lease payments from the measurement of right-of-use assets and lease liabilities. The Company's variable lease payments generally include usage based nonlease components. The Company's lease agreements do not contain any residual &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;value guarantees or restrictive covenants. Leases with an initial term of 12 months or less are not recorded on the balance sheet. Lease expense is recognized on a straight-line basis over the lease term.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company's existing leases do not provide a readily determinable implicit rate. Therefore, the Company estimates its incremental borrowing rate to discount the lease payments based on information available at December 30, 2018 (date of initial application) or the lease commencement date for new leases post adoption. At&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company's weighted average discount rate was&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3.61%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, while the weighted average remaining lease term was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9.21 years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of lease expense were as follows (in thousands):&lt;/span&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="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:79%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease cost&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,777&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Variable lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,096&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total lease cost&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,873&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Rental expense under operating leases for fiscal years &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; amounted to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$12.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$8.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Supplemental cash flow information related to leases was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;padding-left:0px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:79%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,540&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Right-of-use assets obtained in exchange for lease obligations:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53,227&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Maturities of operating lease liabilities were as follows as of&#160;December&#160;28, 2019&#160;(in thousands):&lt;/span&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="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:79%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,263&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,592&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,145&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,308&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Thereafter&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34,957&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total minimum lease payments&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;73,201&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Less: imputed interest&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,430&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Present value of future minimum lease payments&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;61,771&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Less: current portion of operating lease liabilities (Note 9)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,843&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Long-term lease liabilities&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54,928&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:11pt;"&gt;&lt;span style="font-family:inherit;font-size:11pt;font-style:italic;font-weight:bold;"&gt;Financial Statement Impact of Adopting ASC 842&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:48px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company adopted ASC 842 effective December 30, 2018 using the alternative transition method. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company elected the package of practical expedients permitted under the transition guidance, which allowed the Company to carryforward its historical assessments of (1) whether contracts are or contain leases, (2) lease classification and (3) initial direct costs. In addition, the Company elected the practical expedient to use hindsight in determining lease term. The adoption of the new standard resulted in the recognition of right-of-use assets and lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The standard did not materially impact the Company's consolidated income or cash flows.&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="FI2019Q4"
      decimals="4"
      id="d27594788e640-wk-Fact-942183E4AE68EA9963B430673726ED83"
      unitRef="number">0.0361</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="FI2019Q4"
      id="d27594788e644-wk-Fact-FD974B5EF8700729EFCF30680BD3CE80">P9Y2M15D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-6401DBDA2BB30ACCC6AA3079D4ACB13D-0-wk-Fact-FC844E9B45B617C6D64D307A2F8230D2">&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of lease expense were as follows (in thousands):&lt;/span&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="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:79%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease cost&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,777&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Variable lease cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,096&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total lease cost&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,873&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Rental expense under operating leases for fiscal years &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; amounted to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$12.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$8.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27594788e698-wk-Fact-CC19AF94AA1DFBC82A163068BB012AEA"
      unitRef="usd">8777000</us-gaap:OperatingLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27594788e713-wk-Fact-731DDA464DB370465D7A3068FB9AFC63"
      unitRef="usd">4096000</us-gaap:VariableLeaseCost>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27594788e738-wk-Fact-8940144530DE6633E27930715EA68978"
      unitRef="usd">12873000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27594788e757-wk-Fact-171C5B22BCB1B9F28C833072275BDD25"
      unitRef="usd">12900000</us-gaap:OperatingLeasesRentExpenseNet>
    <us-gaap:OperatingLeasesRentExpenseNet
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27594788e761-wk-Fact-A238C9CA841FD7322ABA30725CAA1692"
      unitRef="usd">8900000</us-gaap:OperatingLeasesRentExpenseNet>
    <irbt:ScheduleofLeasesSupplementalCashFlowTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B56B8935F046B3F3B6F4355553F50317-0-wk-Fact-B5248132447EA534431D3556A92783FB">&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Supplemental cash flow information related to leases was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;padding-left:0px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:79%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating cash flows from operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,540&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Right-of-use assets obtained in exchange for lease obligations:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating leases&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53,227&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</irbt:ScheduleofLeasesSupplementalCashFlowTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27594788e839-wk-Fact-1F331369BB737ADD0BEE2113EC866B52"
      unitRef="usd">9540000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27594788e880-wk-Fact-4E92704AE0CD94E0353F212387360A9A"
      unitRef="usd">53227000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-30D028A5E1F14C8E2064307635EFE8BB-0-wk-Fact-0AF4E5BF300AEE7E36523077E6BEBF10">&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Maturities of operating lease liabilities were as follows as of&#160;December&#160;28, 2019&#160;(in thousands):&lt;/span&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="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:79%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,263&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,592&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,145&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,308&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Thereafter&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34,957&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total minimum lease payments&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;73,201&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Less: imputed interest&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,430&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Present value of future minimum lease payments&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;61,771&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Less: current portion of operating lease liabilities (Note 9)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,843&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Long-term lease liabilities&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54,928&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e941-wk-Fact-7CBCA8A8B92F3D0333F4212CEA7C1DD6"
      unitRef="usd">8936000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e956-wk-Fact-62B73D8FA4954FCDA9EB212D76A07E42"
      unitRef="usd">8263000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e976-wk-Fact-2AE098E546DBAEA8B847212DDE3565AA"
      unitRef="usd">7592000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e996-wk-Fact-34E87B66BB132A6B3B04212E85DA92CF"
      unitRef="usd">7145000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e1016-wk-Fact-8D020B0385B25ABE6A54212EEB59E12E"
      unitRef="usd">6308000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e1036-wk-Fact-112A609F6E08B442CBE6212F5B654848"
      unitRef="usd">34957000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e1061-wk-Fact-AEFA35E1417CCDE18477212FD3FC35AA"
      unitRef="usd">73201000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e1076-wk-Fact-7B0B4633F06654A3F9B621304F147F23"
      unitRef="usd">11430000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e1101-wk-Fact-86DBDF7B5B90D9B7D8482130A8DC2AF9"
      unitRef="usd">61771000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e1116-wk-Fact-777D01E669777DD30E1A213142E972C9"
      unitRef="usd">6843000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27594788e1142-wk-Fact-2350D621F8FAC0CB0FFAED15D3C0F08B"
      unitRef="usd">54928000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:BusinessCombinationDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-2EDB6AA3D16E703711441ECF8C44A3A1-0-wk-Fact-9AB79FD0FFF149E6F0F81ECF8C0FEB2C">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;5.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Business Combinations&lt;/span&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:12px;text-indent:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Acquisition of Robopolis&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In October 2017, the Company closed the acquisition of its largest European distributor, Robopolis SAS, a French company ("Robopolis"). The acquisition will better enable the Company to maintain its leadership position and grow its business in several Western European countries through direct control of pre- and post-sales market activities including sales, marketing, branding, channel relationships and customer service. The purchase price was&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$169.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;in cash, net of acquired cash of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$38.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. The acquisition was a stock purchase. The results of operations for this acquisition have been included in the Company&#x2019;s operating results since the acquisition date.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the final allocation of the purchase price (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:86%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;37,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts receivable, net (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,426&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36,304&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;80,419&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36,597&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,456&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;215,183&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts payable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(29,391&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,376&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(10,864&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,138&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities assumed&lt;/span&gt;&lt;/div&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(45,769&lt;/span&gt;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net assets acquired&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;169,414&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;text-indent:48px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;padding-left:84px;text-indent:-12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1) The accounts receivable balance includes reserves for product returns, discounts and promotions assumed as part of the acquisition.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;padding-left:84px;text-indent:-12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:60%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Useful Life&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reacquired distribution rights&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.25 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;29,296&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,029&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Non-competition agreements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;272&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36,597&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:48px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Acquisition of Sales On Demand Corporation&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In April&#160;2017, the Company closed its acquisition of the iRobot-related distribution business of Sales On Demand Corporation ("SODC") for &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$16.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;in cash, equal to the book value of the acquired assets. &#160;The acquisition will better enable the Company to maintain its leadership position and accelerate the growth of its business in&#160;Japan&#160;through direct control of pre- and post-sales market activities including sales, marketing, branding, channel relationships and customer service. It also expands the Company's presence and customer outreach opportunities in&#160;Japan. The acquisition was a stock purchase. The results of operations for this acquisition have been included in the Company's operating results since the acquisition date. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;During 2017, the Company finalized the purchase price allocation and made measurement period adjustments to the provisional amounts reported as the estimated fair values of assets acquired. These measurement period adjustments resulted in a&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;non-taxable gain on business acquisition which represents the excess of the fair value of the net assets acquired over the purchase price. The gain on business acquisition was recorded within other income, net in the consolidated statements of income. The Company believes that the gain on business acquisition was due to the transaction not being subjected to a competitive bidding process and the purchase price being determined based on the net book value of the net assets acquired.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-align:justify;text-indent:29px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the final allocation of the purchase price (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;text-indent:36px;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:94.7265625%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:88%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;125&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts receivable, net (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;18,290&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,065&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax assets, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;409&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,640&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets acquired&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;24,033&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,450&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(691&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities assumed&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,141&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net assets acquired&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;18,892&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gain on business acquisition&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,243&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total purchase price&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;16,649&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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%;text-align:center;text-indent:36px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1) The accounts receivable balance reflects reserves for product returns, discounts and promotions assumed as part of the acquisition. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;     &lt;/span&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="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:55%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Useful Life&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,490&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reacquired distribution rights&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9 months&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,150&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,640&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Pro Forma Results (Unaudited)&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table shows unaudited pro forma results of operations as if the Company had acquired Robopolis on January&#160;1, 2017 (in thousands, except per share amounts):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:81%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 30, 2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;901,612&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;51,887&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income per share:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic income per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.88&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted income per share&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company has not furnished pro forma financial information relating to its acquisition of SODC in 2017 and an immaterial acquisition during the fiscal year 2019, because such information is not material, individually or in the aggregate, to its financial results. The unaudited pro forma results of operations are not necessarily indicative of the actual results that would have occurred had the transactions taken place at the beginning of the periods indicated.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-5"
      id="d27596604e639-wk-Fact-F17D83BEEF9C5E1910B41ECF8C10797D"
      unitRef="usd">169400000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:CashAcquiredFromAcquisition
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-5"
      id="d27596604e643-wk-Fact-260AA60A4D31CA7912E91ECF8C103C9E"
      unitRef="usd">38000000.0</us-gaap:CashAcquiredFromAcquisition>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e679-wk-Fact-8E61CF9B877E74E7B1381ECF8BB50A9D"
      unitRef="usd">37981000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e694-wk-Fact-BBA14B7D0211EC2DC6891ECF8BB1241E"
      unitRef="usd">21426000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e714-wk-Fact-92FDCF5FCA5E5131A3921ECF8BB3CC02"
      unitRef="usd">36304000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:Goodwill
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e734-wk-Fact-93D90F1103A7705B71AB1ECF8BB2D976"
      unitRef="usd">80419000</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e754-wk-Fact-92555C7507135F7F9F6E1ECF8BB308D4"
      unitRef="usd">36597000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e774-wk-Fact-E6F3B1E13439866E5C481ECF8BB07872"
      unitRef="usd">2456000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e794-wk-Fact-9815A85C72495B2DC3C51ECF8BB3C445"
      unitRef="usd">215183000</irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e835-wk-Fact-DCAF092160D747A6D06B1ECF8BB4C54A"
      unitRef="usd">29391000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable>
    <irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e856-wk-Fact-E0132CC78D6CF6D9D64B1ECF8BB1325E"
      unitRef="usd">3376000</irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e877-wk-Fact-45C8D3722AA0D24C96B61ECF8BAF8FBE"
      unitRef="usd">10864000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e899-wk-Fact-C10EAB72ED029DBFE0801ECF8BB5A3C6"
      unitRef="usd">2138000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e920-wk-Fact-EB79D74B77F1E3C5376E1ECF8BB18A45"
      unitRef="usd">45769000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="I2017Q4RoboAcq_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e946-wk-Fact-0424E0245D5144299EEE1ECF8BB1E348"
      unitRef="usd">169414000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      id="d27596604e1036-wk-Fact-779649519F3BD57CC02B1ECF8C0A9545">P2Y3M</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27596604e1051-wk-Fact-EF8282B2B5924EE206401ECF8C0826E6"
      unitRef="usd">29296000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      id="d27596604e1071-wk-Fact-910BF95595D9534DC08B1ECF8C0E9EEC">P14Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27596604e1081-wk-Fact-071D94635A9DE92779A61ECF8C0782EB"
      unitRef="usd">7029000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      id="d27596604e1106-wk-Fact-48E89A4982C048F69CB71ECF8C15058F">P3Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      decimals="-3"
      id="d27596604e1116-wk-Fact-AC6BAE89B731D2E3CFC61ECF8C07BE3C"
      unitRef="usd">272000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember"
      decimals="-3"
      id="d27596604e1156-wk-Fact-7C7459B07B42DEA233C61ECF8C0790F8"
      unitRef="usd">36597000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-5"
      id="d27596604e1175-wk-Fact-9DF299E099ACC4EFEF343B17FE5C244B"
      unitRef="usd">16600000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-5"
      id="d27596604e1182-wk-Fact-420EAA1CF6720CDC42173B1996809CCA"
      unitRef="usd">2200000</us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount>
    <us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-395C16434F6236759C461ECF8C4419A6-0-wk-Fact-1E890AAB027675B322E61ECF8C126695">&lt;div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-align:justify;text-indent:29px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the final allocation of the purchase price (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;text-indent:36px;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:94.7265625%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:88%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;125&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts receivable, net (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,496&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;18,290&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,065&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax assets, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;409&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,640&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets acquired&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;24,033&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,450&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(691&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities assumed&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,141&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net assets acquired&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;18,892&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gain on business acquisition&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,243&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total purchase price&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;16,649&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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%;text-align:center;text-indent:36px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1) The accounts receivable balance reflects reserves for product returns, discounts and promotions assumed as part of the acquisition. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the final allocation of the purchase price (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="4"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:86%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cash&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;37,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts receivable, net (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,426&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36,304&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Goodwill&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;80,419&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36,597&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,456&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;215,183&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accounts payable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(29,391&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,376&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(10,864&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,138&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities assumed&lt;/span&gt;&lt;/div&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(45,769&lt;/span&gt;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net assets acquired&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;169,414&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1216-wk-Fact-6852AE266B5EB29667A11ECF8BB0EF45"
      unitRef="usd">125000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1231-wk-Fact-B96F862450DDC510604E1ECF8BB02F34"
      unitRef="usd">-5496000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1252-wk-Fact-1A296A3AC0C3EEB967851ECF8BB291E6"
      unitRef="usd">18290000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1272-wk-Fact-0615289844420B0121881ECF8BB431A4"
      unitRef="usd">2065000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1292-wk-Fact-00E223C0976C76F118201ECF8BB33E9B"
      unitRef="usd">409000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets>
    <us-gaap:Goodwill
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1312-wk-Fact-F38E1E4B5CDD3721C4C11ECF8BB1728F"
      unitRef="usd">0</us-gaap:Goodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1332-wk-Fact-D6AE8FDF646669D7B20B1ECF8BB09410"
      unitRef="usd">8640000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles>
    <irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1352-wk-Fact-70F52791C4F6B2A020C11ECF8BAF772C"
      unitRef="usd">24033000</irbt:BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1393-wk-Fact-C2B9BFC110290B25D2DC1ECF8BB3FB9A"
      unitRef="usd">4450000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1414-wk-Fact-35B3627F946263123CEB1ECF8BB1C962"
      unitRef="usd">691000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1436-wk-Fact-6540B06690365A96521A1ECF8BAE10C8"
      unitRef="usd">5141000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet
      contextRef="I2017Q2SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1462-wk-Fact-6EDD58C62135B9A294C91ECF8BB23DAB"
      unitRef="usd">18892000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet>
    <us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1477-wk-Fact-C8C71B51583856C06FE41ECF8BAE06EB"
      unitRef="usd">2243000</us-gaap:BusinessCombinationBargainPurchaseGainRecognizedAmount>
    <us-gaap:PaymentsToAcquireBusinessesGross
      contextRef="FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1503-wk-Fact-7EDA900C6976614A91631ECF8BB4F7CE"
      unitRef="usd">16649000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-7648B252919D76947BE31ECF8C442097-0-wk-Fact-19656F0DE2A8D75EE6BD1ECF8C0F35EA">&lt;div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;     &lt;/span&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="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:55%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Useful Life&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,490&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reacquired distribution rights&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9 months&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,150&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,640&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:60%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:19%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Useful Life&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reacquired distribution rights&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.25 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;29,296&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,029&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Non-competition agreements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;272&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36,597&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      id="d27596604e1590-wk-Fact-59B8BD4C8ACAD47A9E131ECF8BBB9525">P13Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27596604e1605-wk-Fact-79F6292096449DC81B831ECF8BBB0111"
      unitRef="usd">4490000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      id="d27596604e1625-wk-Fact-476126C1321F053185491ECF8BBA4331">P9M</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27596604e1635-wk-Fact-E8C125E191FD51EDDBAB1ECF8BBA9CA3"
      unitRef="usd">4150000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="D2017Q1SODC_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember"
      decimals="-3"
      id="d27596604e1675-wk-Fact-A5A0B09028F76179FB7E1ECF8BBB1172"
      unitRef="usd">8640000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:BusinessAcquisitionProFormaInformationTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-21EE71B9EA80A1A7A4CB1ECF8C444634-0-wk-Fact-2823B676CBB1F20E228B1ECF8C11E230">&lt;div style="line-height:120%;text-indent:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Pro Forma Results (Unaudited)&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table shows unaudited pro forma results of operations as if the Company had acquired Robopolis on January&#160;1, 2017 (in thousands, except per share amounts):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:81%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 30, 2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;901,612&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;51,887&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income per share:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Basic income per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.88&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted income per share&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.80&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessAcquisitionProFormaInformationTextBlock>
    <us-gaap:BusinessAcquisitionsProFormaRevenue
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27596604e1761-wk-Fact-A27EA334E48FF2ECC09A1ECF8BBE606C"
      unitRef="usd">901612000</us-gaap:BusinessAcquisitionsProFormaRevenue>
    <us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27596604e1776-wk-Fact-DDAA958B51DF671AB7831ECF8BBD5DD0"
      unitRef="usd">51887000</us-gaap:BusinessAcquisitionsProFormaNetIncomeLoss>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27596604e1822-wk-Fact-8BA27DC9D04ECDAAE0FD1ECF8BBC53AB"
      unitRef="usdPerShare">1.88</us-gaap:BusinessAcquisitionProFormaEarningsPerShareBasic>
    <us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27596604e1842-wk-Fact-822599122EFA478856E61ECF8BBE66F8"
      unitRef="usdPerShare">1.80</us-gaap:BusinessAcquisitionProFormaEarningsPerShareDiluted>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-2E4EBF321BBAF6072D311ECF8C4467C2-0-wk-Fact-CB202956A15A8E7DCD4F1ECF8BE51383">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;6.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Inventory&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory consists of the following (in thousands):&lt;/span&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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:73%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Raw materials&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Finished goods&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;154,522&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;161,641&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;157,347&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;164,633&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-FA7BE3A01662FFD806B41ECF8C442599-0-wk-Fact-0030DD1B2B261C1A69E21ECF8BE5F597">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Inventory consists of the following (in thousands):&lt;/span&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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:73%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Raw materials&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,825&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,992&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Finished goods&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;154,522&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;161,641&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;157,347&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;164,633&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27595090e713-wk-Fact-0D3F44D2BF53B9824CB41ECF8BA83B9D"
      unitRef="usd">2825000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27595090e732-wk-Fact-15F7449814CD84DE25761ECF8BAA6C7F"
      unitRef="usd">2992000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27595090e747-wk-Fact-3CDBDDE6B96A817222331ECF8BA60249"
      unitRef="usd">154522000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27595090e766-wk-Fact-126CC233F278BF86DC311ECF8BA85E2F"
      unitRef="usd">161641000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27595090e791-wk-Fact-DE1D48EE84D86AB353271ECF8BFEFE61"
      unitRef="usd">157347000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27595090e810-wk-Fact-5188E3C98202E8F83A161ECF8C028A0C"
      unitRef="usd">164633000</us-gaap:InventoryNet>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-D706D4F138A7DD1837201ECF8C45BC36-0-wk-Fact-56156F4E14F231D898561ECF8C14FE6B">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;7.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Property and Equipment&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment consists of the following (in thousands):&lt;/span&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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:73%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Computer and equipment&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,588&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,339&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Furniture and fixtures&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,494&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,231&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Machinery and tooling&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;79,213&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;60,281&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Leasehold improvements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;39,538&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,701&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Business applications software&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,933&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;15,638&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Subtotal&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;156,766&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;122,190&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Less: accumulated depreciation&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;80,778&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;65,164&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Property and equipment, net&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;75,988&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;57,026&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the net book value of capitalized internal-use software costs was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$6.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$4.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, which are included within business applications software.  &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Depreciation expense for the years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$24.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;"&gt;&lt;span&gt;$17.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;"&gt;&lt;span&gt;$12.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, which included amortization expense of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, for capitalized internal-use software.&lt;/span&gt;&lt;/div&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember"
      decimals="-3"
      id="d27602078e714-wk-Fact-5D91B833D373CD18C8661ECF8BBF07A7"
      unitRef="usd">13588000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_ComputerEquipmentMember"
      decimals="-3"
      id="d27602078e733-wk-Fact-1C13065E671C7F7910E21ECF8BC1B0EC"
      unitRef="usd">12339000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember"
      decimals="-3"
      id="d27602078e748-wk-Fact-56AB5359D7E2515D52091ECF8BC6D24F"
      unitRef="usd">6494000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_FurnitureAndFixturesMember"
      decimals="-3"
      id="d27602078e767-wk-Fact-88E65991CC7FF6BD28E31ECF8BC44625"
      unitRef="usd">5231000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember"
      decimals="-3"
      id="d27602078e787-wk-Fact-FAFBDE9CCED9CBF78F401ECF8BC7B8F5"
      unitRef="usd">79213000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_MachineryAndEquipmentMember"
      decimals="-3"
      id="d27602078e806-wk-Fact-B19DE61864C8095F90A61ECF8BC6DA37"
      unitRef="usd">60281000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember"
      decimals="-3"
      id="d27602078e826-wk-Fact-0D4E0BD840D144E57FBA1ECF8BC3814C"
      unitRef="usd">39538000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember"
      decimals="-3"
      id="d27602078e845-wk-Fact-DABE3F4C4EAD774C26791ECF8BC4C608"
      unitRef="usd">28701000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"
      decimals="-3"
      id="d27602078e865-wk-Fact-3888163538099D6F63E81ECF8BC85774"
      unitRef="usd">17933000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_SoftwareAndSoftwareDevelopmentCostsMember"
      decimals="-3"
      id="d27602078e884-wk-Fact-97BAFEBB01FAC10288D61ECF8BC197AA"
      unitRef="usd">15638000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602078e904-wk-Fact-9B301E2FC9A34AF337361ECF8BBF6D71"
      unitRef="usd">156766000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602078e923-wk-Fact-6149C8C7B8B5E5BEA9531ECF8BC5B8C3"
      unitRef="usd">122190000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602078e943-wk-Fact-9B0DFE8769271CAC5D581ECF8BC5A047"
      unitRef="usd">80778000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602078e962-wk-Fact-B1818451AE0BC3AF16D41ECF8BC70C35"
      unitRef="usd">65164000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602078e987-wk-Fact-C4252AD0714C3631DD521ECF8BF900C4"
      unitRef="usd">75988000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602078e1006-wk-Fact-7A67558A4703169135D01ECF8B91E4C0"
      unitRef="usd">57026000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27602078e1034-wk-Fact-04BA311D34360AA5F9621ECF8C135A69"
      unitRef="usd">6800000</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:CapitalizedComputerSoftwareNet
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27602078e1038-wk-Fact-13A17F0EC3155F99FE091ECF8C13BDDF"
      unitRef="usd">4700000</us-gaap:CapitalizedComputerSoftwareNet>
    <us-gaap:Depreciation
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27602078e1057-wk-Fact-7B19E8708EDEB354A62F1ECF8C11526D"
      unitRef="usd">24400000</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27602078e1061-wk-Fact-59E9A2076DCE00F8BCC61ECF8C11E056"
      unitRef="usd">17000000.0</us-gaap:Depreciation>
    <us-gaap:Depreciation
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27602078e1066-wk-Fact-AF72A4CFEED2BB5DCE3B1ECF8C15F19A"
      unitRef="usd">12300000</us-gaap:Depreciation>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27602078e1070-wk-Fact-4DA7F1833C81F062F8F51ECF8C148771"
      unitRef="usd">1500000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27602078e1074-wk-Fact-7A7B2384A7F78C4216241ECF8C13BB42"
      unitRef="usd">1200000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:CapitalizedComputerSoftwareAmortization1
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27602078e1078-wk-Fact-050BFED09DD1B23DC5051ECF8C11565C"
      unitRef="usd">1500000</us-gaap:CapitalizedComputerSoftwareAmortization1>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-FDA64AB9194C5847CD3C1ECF8C45E557-0-wk-Fact-CECD2E9A875A01F60E651ECF8BD1CF37">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;8.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Goodwill and other intangible assets&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the activity in the carrying amount of goodwill for fiscal years 2019 and 2018 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:78%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:20%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 30, 2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;121,440&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Purchase accounting adjustments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;830&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Effect of foreign currency translation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,374&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;118,896&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Acquisition&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,050&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Effect of foreign currency translation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,214&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;118,732&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:6px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets consisted of the following (in thousands):&lt;/span&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="24"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Accumulated&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Accumulated&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Net&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Completed technology&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;24,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,495&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26,900&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,607&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,293&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tradename&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,095&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,302&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,793&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,291&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,365&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,926&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reacquired distribution rights&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,680&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,680&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,499&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23,598&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,901&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Non-competition agreements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;192&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;64&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;263&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;110&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;153&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,231&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;58,879&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,053&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;46,780&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;24,273&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Amortization expense related to acquired intangible assets was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$12.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$19.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$13.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively.  &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The estimated future amortization expense related to current intangible assets in each of the five succeeding fiscal years is expected to be as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;&#160;&lt;/span&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.61013645224172%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost of Revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Operating Expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,140&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,140&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,140&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,921&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;915&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,696&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;240&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,021&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;60&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;841&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Thereafter&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,733&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,733&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,495&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,857&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,352&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-3BA7E0419FF4257E4C391ECF8C451B9B-0-wk-Fact-7EA7099779D8AD114C9B1ECF8BD17EBA">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the activity in the carrying amount of goodwill for fiscal years 2019 and 2018 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:78%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:20%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 30, 2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;121,440&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Purchase accounting adjustments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;830&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Effect of foreign currency translation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,374&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;118,896&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Acquisition&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,050&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Effect of foreign currency translation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,214&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;118,732&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:6px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27601433e663-wk-Fact-26D7F10178A4A0B4D4BA1ECF8C0CF4DC"
      unitRef="usd">121440000</us-gaap:Goodwill>
    <us-gaap:GoodwillPurchaseAccountingAdjustments
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27601433e678-wk-Fact-ACDA112B0847BAB4ACE21ECF8C0C63EC"
      unitRef="usd">830000</us-gaap:GoodwillPurchaseAccountingAdjustments>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27601433e698-wk-Fact-A25F31C92425AD08C3A01ECF8C0EAE37"
      unitRef="usd">-3374000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27601433e719-wk-Fact-F7507234ED785F93176A1ECF8B9EA43E"
      unitRef="usd">118896000</us-gaap:Goodwill>
    <us-gaap:GoodwillAcquiredDuringPeriod
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27601433e739-wk-Fact-EB47FA12E3E5C3BC22331ECF8C0BEFD8"
      unitRef="usd">2050000</us-gaap:GoodwillAcquiredDuringPeriod>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27601433e759-wk-Fact-C4E89A2B0547DF9DF7191ECF8C0D11D2"
      unitRef="usd">-2214000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e785-wk-Fact-FA888AE4A5D8E20382961ECF8BA4F872"
      unitRef="usd">118732000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-FF748412FD8CA1F410A01ECF8C45DBFE-0-wk-Fact-BFAB33F1E1AC288A982A1ECF8BD0A8D6">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets consisted of the following (in thousands):&lt;/span&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="24"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:39%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Accumulated&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Accumulated&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Amortization&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Net&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Completed technology&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28,100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;24,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,495&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26,900&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,607&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,293&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tradename&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;100&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Customer relationships&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,095&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,302&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,793&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,291&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,365&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,926&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Reacquired distribution rights&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,680&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,680&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,499&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23,598&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,901&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Non-competition agreements&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;256&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;192&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;64&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;263&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;110&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;153&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,231&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;58,879&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,352&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,053&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;46,780&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;24,273&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember"
      decimals="-3"
      id="d27601433e1105-wk-Fact-61443F51FA409546E4871ECF8BDA68BD"
      unitRef="usd">28100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember"
      decimals="-3"
      id="d27601433e1124-wk-Fact-E1B71CD6C7FB89F14BCC1ECF8BDDC6F0"
      unitRef="usd">24605000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember"
      decimals="-3"
      id="d27601433e1143-wk-Fact-3B676FA91E6171DF398E1ECF8BE12655"
      unitRef="usd">3495000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember"
      decimals="-3"
      id="d27601433e1163-wk-Fact-4AA71A9B12183C7EC56F1ECF8BDE35F9"
      unitRef="usd">26900000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember"
      decimals="-3"
      id="d27601433e1182-wk-Fact-99A3AC39F57F96025AEB1ECF8BE09EFB"
      unitRef="usd">21607000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_PatentedTechnologyMember"
      decimals="-3"
      id="d27601433e1202-wk-Fact-BB81FD11139D3F45EAFA1ECF8BDFE84B"
      unitRef="usd">5293000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d27601433e1217-wk-Fact-2821F855E6C4D037B7401ECF8BE391FE"
      unitRef="usd">100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d27601433e1236-wk-Fact-76A7AA83D96463C635021ECF8BDB71E5"
      unitRef="usd">100000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d27601433e1255-wk-Fact-F5392C4EF2079BF684C31ECF8BE11083"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d27601433e1275-wk-Fact-89B73162E20E4EDA756F1ECF8BD93C0E"
      unitRef="usd">100000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d27601433e1294-wk-Fact-A1E51145516644B9620E1ECF8BE20E64"
      unitRef="usd">100000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_TradeNamesMember"
      decimals="-3"
      id="d27601433e1313-wk-Fact-9A91C421AD4FCE58FE6B1ECF8BDFF8DD"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27601433e1334-wk-Fact-9B105A2D326C8DBF2F2F1ECF8BE1CBFC"
      unitRef="usd">11095000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27601433e1353-wk-Fact-8E9202DBC8134B953F791ECF8BDA52D8"
      unitRef="usd">2302000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27601433e1372-wk-Fact-DFB29E33D6E79C3A73E71ECF8BDEB5F2"
      unitRef="usd">8793000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27601433e1392-wk-Fact-9BBA6E360C813DFF897D1ECF8BDBDBC6"
      unitRef="usd">11291000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27601433e1411-wk-Fact-081215BEC2770791A9191ECF8BE27401"
      unitRef="usd">1365000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="d27601433e1430-wk-Fact-A376D59595625C91B32C1ECF8BE030B9"
      unitRef="usd">9926000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27601433e1451-wk-Fact-4734BE4BCA73A52225F21ECF8BE00EA4"
      unitRef="usd">31680000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27601433e1470-wk-Fact-118F63825C509D4B388B1ECF8BDC321E"
      unitRef="usd">31680000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27601433e1489-wk-Fact-40463703D0A4C845A8AA1ECF8BDFE058"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27601433e1509-wk-Fact-FC91368E3D7FFF5EBCF31ECF8BE37308"
      unitRef="usd">32499000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27601433e1528-wk-Fact-D47FE4269FBDB4C6A5311ECF8BDDB520"
      unitRef="usd">23598000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_DistributionRightsMember"
      decimals="-3"
      id="d27601433e1547-wk-Fact-8B2EA5542DA6590D63581ECF8BDC4AC1"
      unitRef="usd">8901000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      decimals="-3"
      id="d27601433e1568-wk-Fact-523674AE37AB7325FAE21ECF8BE04841"
      unitRef="usd">256000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      decimals="-3"
      id="d27601433e1587-wk-Fact-B2A8E8BE4EFECF1DC2D31ECF8BDDBC3E"
      unitRef="usd">192000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2019Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      decimals="-3"
      id="d27601433e1606-wk-Fact-1EC8C9CC2D8D264977F71ECF8BE289F9"
      unitRef="usd">64000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      decimals="-3"
      id="d27601433e1626-wk-Fact-F76D678A81CF297CE81B1ECF8BDB7E0F"
      unitRef="usd">263000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      decimals="-3"
      id="d27601433e1645-wk-Fact-7254718773BD2F089C561ECF8BE0DB7A"
      unitRef="usd">110000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2018Q4_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_NoncompeteAgreementsMember"
      decimals="-3"
      id="d27601433e1664-wk-Fact-B124F547C7418FB1190F1ECF8BE3774A"
      unitRef="usd">153000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e1690-wk-Fact-14EEB9AE6022CC2D5F671ECF8BE3E3C1"
      unitRef="usd">71231000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e1709-wk-Fact-4202244B55640B7D48A01ECF8BE216FA"
      unitRef="usd">58879000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e1728-wk-Fact-7286D37E27ACA16012C01ECF8BA58474"
      unitRef="usd">12352000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27601433e1748-wk-Fact-2FA1C02883D41537481F1ECF8BE32749"
      unitRef="usd">71053000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27601433e1767-wk-Fact-EBBF719A7F495C0436151ECF8BDAD6BD"
      unitRef="usd">46780000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27601433e1787-wk-Fact-CD47058F31B7D9B4302E1ECF8C026833"
      unitRef="usd">24273000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27601433e1806-wk-Fact-44996C50CCC58157291A1ECF8BCFEC1B"
      unitRef="usd">12800000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27601433e1810-wk-Fact-FB18B010D99D5111FF391ECF8BCFE141"
      unitRef="usd">19600000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27601433e1814-wk-Fact-F9D15E461F3E63287BA01ECF8BCFE31F"
      unitRef="usd">13100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-E6C16F6AAC8702A2316A1ECF8C4540B7-0-wk-Fact-5D3F43A0B8E68995F6BD1ECF8BD02DF4">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The estimated future amortization expense related to current intangible assets in each of the five succeeding fiscal years is expected to be as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;&#160;&lt;/span&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.61013645224172%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:53%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost of Revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Operating Expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2020&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,140&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,140&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2021&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,140&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,921&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2022&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;915&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,696&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;240&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,021&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;60&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;841&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Thereafter&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,733&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,733&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,495&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,857&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,352&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27601433e1941-wk-Fact-53DB321CF3CCA1EC2CD31ECF8C0BA0F7"
      unitRef="usd">1140000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember"
      decimals="-3"
      id="d27601433e1960-wk-Fact-BCF548B329FC29B4994E1ECF8C0807F6"
      unitRef="usd">1000000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e1979-wk-Fact-614BFA937959EE7FD2A31ECF8C0A86D8"
      unitRef="usd">2140000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27601433e1995-wk-Fact-E2917F3B218B1BC9AA571ECF8C062CED"
      unitRef="usd">1140000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember"
      decimals="-3"
      id="d27601433e2014-wk-Fact-B4DE1AD0B37C1CF1F5201ECF8C092BA8"
      unitRef="usd">781000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e2033-wk-Fact-B39F3322DC6FBE4842761ECF8C053CA9"
      unitRef="usd">1921000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27601433e2054-wk-Fact-400A07BE7D3FBCC3E4731ECF8C0411B9"
      unitRef="usd">915000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember"
      decimals="-3"
      id="d27601433e2073-wk-Fact-14EFA72C701B25255C3F1ECF8C04D960"
      unitRef="usd">781000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e2092-wk-Fact-574297EE9266AB4C40A31ECF8C099A1D"
      unitRef="usd">1696000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27601433e2113-wk-Fact-62BCEE5BE799A915A7EA1ECF8C08A98E"
      unitRef="usd">240000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember"
      decimals="-3"
      id="d27601433e2132-wk-Fact-4F71CC98F1764DE42A861ECF8C0AB16A"
      unitRef="usd">781000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e2151-wk-Fact-98EF71627CEA0D6B3AFB1ECF8C0DBC05"
      unitRef="usd">1021000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27601433e2172-wk-Fact-8D36E25709B6A1B022091ECF8C0CFF6E"
      unitRef="usd">60000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember"
      decimals="-3"
      id="d27601433e2191-wk-Fact-FB804F7B6F69AD2D78DA1ECF8C04367D"
      unitRef="usd">781000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e2210-wk-Fact-36678497D18011794E3E1ECF8C07B6EF"
      unitRef="usd">841000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27601433e2231-wk-Fact-F37B4414535C8CA0C71B1ECF8C080239"
      unitRef="usd">0</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember"
      decimals="-3"
      id="d27601433e2250-wk-Fact-11D253F439F804E534D01ECF8C0B716E"
      unitRef="usd">4733000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e2269-wk-Fact-E5251166ABF69A9F95461ECF8C05D504"
      unitRef="usd">4733000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <irbt:Finitelivedintangibleassetsfutureamortizationtotal
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27601433e2295-wk-Fact-AB9288CAEE5C525329E31ECF8C06EA87"
      unitRef="usd">3495000</irbt:Finitelivedintangibleassetsfutureamortizationtotal>
    <irbt:Finitelivedintangibleassetsfutureamortizationtotal
      contextRef="FI2019Q4_us-gaap_IncomeStatementLocationAxis_us-gaap_OperatingExpenseMember"
      decimals="-3"
      id="d27601433e2314-wk-Fact-0F932B1632C21D8359FD1ECF8C033218"
      unitRef="usd">8857000</irbt:Finitelivedintangibleassetsfutureamortizationtotal>
    <irbt:Finitelivedintangibleassetsfutureamortizationtotal
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27601433e2333-wk-Fact-5752C2B7B7CD40C678D61ECF8C0A6341"
      unitRef="usd">12352000</irbt:Finitelivedintangibleassetsfutureamortizationtotal>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-889ED2BC9AFF79CB48471ECF8C45DCBC-0-wk-Fact-B9780F32D31918D891A51ECF8BB5050E">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;9.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Accrued Expenses&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses consist of the following (in thousands):&lt;/span&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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:73%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued warranty&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,856&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued other compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,331&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,518&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued bonus&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,541&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued sales and other indirect taxes payable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,440&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,397&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued direct fulfillment costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,582&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,372&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Current portion of operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,843&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued federal and state income taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,378&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,797&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;81,768&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,259&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-E05632CCE013AC8FB9721ECF8C456A43-0-wk-Fact-E8DEF2F10E69AF6D7A951ECF8BB6F357">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses consist of the following (in thousands):&lt;/span&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="8"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:73%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued warranty&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,856&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued other compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,331&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,518&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued bonus&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,541&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,226&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued sales and other indirect taxes payable&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;12,440&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,397&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued direct fulfillment costs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,582&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,372&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Current portion of operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,843&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued federal and state income taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,378&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,936&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,797&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,846&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;81,768&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,259&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e714-wk-Fact-0C1F254FC55170E787991ECF8BF1512A"
      unitRef="usd">13856000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e733-wk-Fact-30516DCBE7068CBC20C61ECF8BF02EA5"
      unitRef="usd">11964000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e748-wk-Fact-D0BEA4E5B1B0EE7F10C61ECF8BF06A67"
      unitRef="usd">13331000</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OtherEmployeeRelatedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e767-wk-Fact-4C02939E4B2300A6953B1ECF8BEFFEB8"
      unitRef="usd">10518000</us-gaap:OtherEmployeeRelatedLiabilitiesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e787-wk-Fact-265F4001930B1C8E1C301ECF8BF187BE"
      unitRef="usd">12541000</us-gaap:AccruedBonusesCurrent>
    <us-gaap:AccruedBonusesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e806-wk-Fact-71976771C1F69C788E7B1ECF8BF0A429"
      unitRef="usd">21226000</us-gaap:AccruedBonusesCurrent>
    <irbt:AccruedSalesTax
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e826-wk-Fact-35F2A91E69E5579EDD9A1ECF8BF224D2"
      unitRef="usd">12440000</irbt:AccruedSalesTax>
    <irbt:AccruedSalesTax
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e845-wk-Fact-47AA849179FAFDFB291F1ECF8BF2CCBA"
      unitRef="usd">11397000</irbt:AccruedSalesTax>
    <irbt:AccruedDirectFulfillmentCosts
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e865-wk-Fact-4FB22791712A3AF9D6571ECF8BF2B868"
      unitRef="usd">10582000</irbt:AccruedDirectFulfillmentCosts>
    <irbt:AccruedDirectFulfillmentCosts
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e884-wk-Fact-64BFB237FC395470DB7C1ECF8BF0A1E4"
      unitRef="usd">5372000</irbt:AccruedDirectFulfillmentCosts>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e904-wk-Fact-777D01E669777DD30E1A213142E972C9"
      unitRef="usd">6843000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e923-wk-Fact-1F72C994E9E140E433121ECF8B92A769"
      unitRef="usd">0</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e943-wk-Fact-B7478715B71BA377A9E01ECF8BF1611B"
      unitRef="usd">3378000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e962-wk-Fact-799999B53A63AF01E0F61ECF8BF20A04"
      unitRef="usd">1936000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e982-wk-Fact-E8F919840CFDAFAF08431ECF8BF2A180"
      unitRef="usd">8797000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e1001-wk-Fact-9AED5ADDE612436497741ECF8BF1122F"
      unitRef="usd">8846000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27602660e1026-wk-Fact-85F0823588BFA4812E1E1ECF8BFA5AE4"
      unitRef="usd">81768000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27602660e1045-wk-Fact-CB9C1BD46E27F5E075C51ECF8B919BB7"
      unitRef="usd">71259000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-BDBD5337DFA682AF306A1ECF8C455A71-0-wk-Fact-BAF09CDFEDA5F31B5FD71ECF8C1BD6D8">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;10.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Working Capital Facility&lt;/span&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:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Credit Facility&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In June 2018, the Company entered into an agreement with Bank of America, N.A., increasing the amount of its unsecured revolving line of credit from&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$75.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;to&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$150.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and extending the term of the credit facility to June 2023. As of&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company had no outstanding borrowings under the revolving credit facility. The revolving line of credit is available to fund working capital and other corporate purposes. The interest on loans under the credit facility accrues, at the Company's election, at either (1) LIBOR plus a margin, currently equal to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.0%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, based on the Company's ratio of indebtedness to Adjusted EBITDA (the "Eurodollar Rate"), or (2) the lender&#x2019;s base rate. The lender&#x2019;s base rate is equal to the highest of (1) the federal funds rate plus&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.5%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, (2) the lender&#x2019;s prime rate or (3) the Eurodollar Rate plus&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.0%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. In the event that LIBOR is discontinued as expected in 2021, the Company expects the interest rates for the debt following such event will be based on either alternate base rates or agreed upon replacement rates. While the Company does not expect a LIBOR discontinuation to affect its ability to borrow or maintain already outstanding borrowings, it could result in higher interest rates. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The credit facility contains customary terms and conditions for credit facilities of this type, including restrictions on the Company's ability to incur or guarantee additional indebtedness, create liens, enter into transactions with affiliates, make loans or investments, sell assets, pay dividends or make distributions on, or repurchase, the Company's stock, and consolidate or merge with other entities. In addition, the Company is required to meet certain financial covenants customary with this type of agreement, including maintaining a maximum ratio of indebtedness to Adjusted EBITDA and a minimum specified interest coverage ratio.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The credit facility contains customary events of default, including for payment defaults, breaches of representations, breaches of affirmative or negative covenants, cross defaults to other material indebtedness, bankruptcy and failure to discharge certain judgments. If a default occurs and is not cured within any applicable cure period or is not waived, the Company's obligations under the credit facility may be accelerated.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of&#160;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company was in compliance with all covenants under the revolving credit facility.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Lines of Credit&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company has an unsecured letter of credit facility with Bank of America, N.A., available to fund letters of credit up to an aggregate outstanding amount of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. As of December 28, 2019, the Company had letters of credit outstanding of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.5 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; under the letter of credit facility.&#160; &lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company has an unsecured guarantee line of credit with Mizuho, Bank Ltd., available to fund import tax payments up to an aggregate outstanding amount of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;220.0 million&lt;/span&gt;&lt;/span&gt; Japanese Yen. As of December 28, 2019, the Company had no outstanding balance under the guarantee line of credit.</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="FI2017Q4"
      decimals="-5"
      id="d27602062e638-wk-Fact-0F7CC3F0BB00F3D93BF61ECF8C1002BE"
      unitRef="usd">75000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27602062e642-wk-Fact-F62FD637F8384EF5A6531ECF8C11CB6C"
      unitRef="usd">150000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <irbt:InterestRateAboveLIBORUnderConditionOne
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27602062e650-wk-Fact-5B40AE6B19EC4F6AD7B81ECF8C159753"
      unitRef="number">0.010</irbt:InterestRateAboveLIBORUnderConditionOne>
    <irbt:InterestRateAbovetheFederalFundRateUnderConditionTwo
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27602062e654-wk-Fact-FD19E0C1352C3C44A9031ECF8C12D6CB"
      unitRef="number">0.005</irbt:InterestRateAbovetheFederalFundRateUnderConditionTwo>
    <irbt:InterestRateAbovetheEurodollarRateUnderConditionTwo
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27602062e659-wk-Fact-89D9476EC237EB230D491ECF8C111E48"
      unitRef="number">0.010</irbt:InterestRateAbovetheEurodollarRateUnderConditionTwo>
    <irbt:Letterofcreditfacilitymaximumborrowing
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27602062e682-wk-Fact-046965E13EB02443310D307FF1C1ACD0"
      unitRef="usd">5000000.0</irbt:Letterofcreditfacilitymaximumborrowing>
    <us-gaap:LettersOfCreditOutstandingAmount
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27602062e686-wk-Fact-11C1A37C6F9C7899BE3630807D8A65AD"
      unitRef="usd">500000</us-gaap:LettersOfCreditOutstandingAmount>
    <irbt:Lineofcreditmaximumamount
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27602062e693-wk-Fact-30C9AE12D79DD6EA366B3086C87872B4"
      unitRef="jpy">220000000.0</irbt:Lineofcreditmaximumamount>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-FD44A68352E11C63AC901ECF8C46686D-0-wk-Fact-BC9B1A5DBB29B28B33D41ECF8BE7D010">&lt;div style="line-height:120%;text-align:left;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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;11.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Derivative Instruments and Hedging Activities&lt;/span&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:12px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company operates internationally and, in the normal course of business, is exposed to fluctuations in foreign currency exchange rates.&#160;The foreign currency exposures typically arise from transactions denominated in currencies other than the functional currency of the Company's operations, primarily the British Pound, Canadian Dollar, Euro and Japanese Yen. The Company uses derivative instruments that are designated in cash flow hedge relationships to reduce or eliminate the effects of foreign exchange rate change on sales. These contracts typically have maturities of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;thirty-seven months&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; or less. At &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company had outstanding cash flow hedges with a total notional value of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$424.6 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$366.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company also enters into economic hedges that are not designated as hedges from an accounting standpoint to reduce or eliminate the effects of foreign exchange rate changes typically related to short term trade receivables and payables. These contracts typically have maturities of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;ten months&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; or less.  At &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company had outstanding economic hedges with a total notional value of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$58.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$56.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The fair values of derivative instruments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="10"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Classification&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Derivatives not designated as hedging instruments:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other current assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,855&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;551&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;297&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Derivatives designated as cash flow hedges:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other current assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,347&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,112&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;172&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;47&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;335&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Long-term liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;414&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;795&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gains (losses) associated with derivative instruments not designated as hedging instruments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="10"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:51%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal year ended&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Classification&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;Gain (loss) recognized in income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;Other income, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;&lt;span&gt;89&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;&lt;span&gt;1,568&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:12px;text-align:justify;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following tables reflect the effect of derivatives designated as cash flow hedging for the years ended&#160;(in thousands):&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:71%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Gain (loss) recognized in OCI on Derivative (1)&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal year ended&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;16,483&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(686&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:88px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:64px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The amount represents the change in fair value of derivative contracts due to changes in spot rates.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:44%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Gain (loss) recognized in earnings on cash flow hedging instruments&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost of revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost of revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Consolidated statements of income in which the effects of cash flow hedging instruments are recorded&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,214,010&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;670,083&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,092,584&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;537,156&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Gain or (loss) on cash flow hedging relationships:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Foreign currency forward contracts:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Amount of gain (loss) reclassified from AOCI into earnings&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,889&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;948&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(386&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <us-gaap:DerivativeTermOfContract
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      id="d27604789e635-wk-Fact-E30ED21F4356323EE86D2CB4EDD67634">P37M</us-gaap:DerivativeTermOfContract>
    <us-gaap:DerivativeNotionalAmount
      contextRef="FI2019Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-5"
      id="d27604789e647-wk-Fact-648A10A1B207B8092EDC1ECF8BE74FAE"
      unitRef="usd">424600000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="FI2018Q4_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-5"
      id="d27604789e651-wk-Fact-C928892442FEAF2C550B1ECF8BE61EE7"
      unitRef="usd">366700000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeTermOfContract
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember"
      id="d27604789e658-wk-Fact-BF136EF7E3F495ECA62F2CB310C6A866">P10M</us-gaap:DerivativeTermOfContract>
    <us-gaap:DerivativeNotionalAmount
      contextRef="FI2019Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember"
      decimals="-5"
      id="d27604789e670-wk-Fact-FB74171CBB8E553686B71ECF8BE5FD07"
      unitRef="usd">58400000</us-gaap:DerivativeNotionalAmount>
    <us-gaap:DerivativeNotionalAmount
      contextRef="FI2018Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember"
      decimals="-5"
      id="d27604789e674-wk-Fact-3A92BD76927B557676581ECF8BE68D62"
      unitRef="usd">56000000.0</us-gaap:DerivativeNotionalAmount>
    <us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-0045672CD2FAE38BEF511ECF8C467897-0-wk-Fact-5A58211F7D7A8E9AC9661ECF8BE6E475">&lt;div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The fair values of derivative instruments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="10"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:50%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Classification&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Derivatives not designated as hedging instruments:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other current assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,855&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;551&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;297&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Derivatives designated as cash flow hedges:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other current assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,347&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;53&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,112&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;172&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accrued expenses&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;47&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;335&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Long-term liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;414&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;795&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock>
    <us-gaap:DerivativeAssets
      contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember"
      decimals="-3"
      id="d27604789e877-wk-Fact-A1A03FADF53AB70757DC1ECF8BD8600E"
      unitRef="usd">1855000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember"
      decimals="-3"
      id="d27604789e896-wk-Fact-7BC4AFE74308A947FE671ECF8BD88A2D"
      unitRef="usd">551000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember"
      decimals="-3"
      id="d27604789e921-wk-Fact-C7E9F4E0925E02D860691ECF8BD571DA"
      unitRef="usd">297000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember"
      decimals="-3"
      id="d27604789e940-wk-Fact-6F300CCE84C97249DDD61ECF8BD4F7F6"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeAssets
      contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1026-wk-Fact-591834EDB1115F2A932F1ECF8BD7A8C4"
      unitRef="usd">4347000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherCurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1045-wk-Fact-2F70ECD3AF0AEC0F76BA1ECF8BD48D6E"
      unitRef="usd">53000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1070-wk-Fact-372C0B0FB873AB4539511ECF8BD6D0A0"
      unitRef="usd">9112000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentAssetsMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1089-wk-Fact-4461671E4669312DA2FA1ECF8BD7876B"
      unitRef="usd">172000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1119-wk-Fact-DB64315D402AA5BCEB9E1ECF8BD7D37A"
      unitRef="usd">47000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_AccruedLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1138-wk-Fact-9616340391DC85218B3C1ECF8BD6E644"
      unitRef="usd">335000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2019Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1168-wk-Fact-29657E0DC65E9543348A1ECF8BD563EA"
      unitRef="usd">414000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2018Q4_us-gaap_BalanceSheetLocationAxis_us-gaap_OtherNoncurrentLiabilitiesMember_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_HedgingDesignationAxis_us-gaap_DesignatedAsHedgingInstrumentMember"
      decimals="-3"
      id="d27604789e1187-wk-Fact-E871B82B1CCE649188D91ECF8BD5DCCD"
      unitRef="usd">795000</us-gaap:DerivativeLiabilities>
    <us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-55969595169594389D791ECF8C46B232-0-wk-Fact-1B401F06EA8E25AFDF2E1ECF8BE86601">&lt;div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gains (losses) associated with derivative instruments not designated as hedging instruments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="10"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:51%;"/&gt;&lt;td style="width:22%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal year ended&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Classification&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;Gain (loss) recognized in income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;Other income, net&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;&lt;span&gt;89&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;&lt;span&gt;1,568&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:12px;text-align:justify;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following tables reflect the effect of derivatives designated as cash flow hedging for the years ended&#160;(in thousands):&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="9"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:71%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Gain (loss) recognized in OCI on Derivative (1)&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal year ended&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9.5pt;"&gt;&lt;span style="font-family:inherit;font-size:9.5pt;"&gt;Foreign currency forward contracts&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;16,483&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(686&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:88px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:64px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The amount represents the change in fair value of derivative contracts due to changes in spot rates.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="17"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:44%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="15" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Gain (loss) recognized in earnings on cash flow hedging instruments&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost of revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Revenue&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Cost of revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Consolidated statements of income in which the effects of cash flow hedging instruments are recorded&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,214,010&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;670,083&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,092,584&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;537,156&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:18px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Gain or (loss) on cash flow hedging relationships:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Foreign currency forward contracts:&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;Amount of gain (loss) reclassified from AOCI into earnings&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,889&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;948&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(386&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock>
    <us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet
      contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember"
      decimals="-3"
      id="d27604789e1353-wk-Fact-67B504D5883CE4A3F8BF1ECF8BFD9C59"
      unitRef="usd">89000</us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet>
    <us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet
      contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember"
      decimals="-3"
      id="d27604789e1372-wk-Fact-D91C4B3D1C8CC8A472C71ECF8BFA1764"
      unitRef="usd">1568000</us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
      contextRef="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember"
      decimals="-3"
      id="d27604789e1599-wk-Fact-B573B82C7CECC8E047601ECF8BCC7087"
      unitRef="usd">16483000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax
      contextRef="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember"
      decimals="-3"
      id="d27604789e1618-wk-Fact-18E2B28755E7276C92091ECF8BCB7247"
      unitRef="usd">-686000</us-gaap:OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax>
    <us-gaap:Revenues
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27604789e1938-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49"
      unitRef="usd">1214010000</us-gaap:Revenues>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27604789e1957-wk-Fact-AF9B97F370BB84E713061ECF8C1946E9"
      unitRef="usd">670083000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:Revenues
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27604789e1977-wk-Fact-989EE34444750D4496461ECF8BCC77EC"
      unitRef="usd">1092584000</us-gaap:Revenues>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27604789e1996-wk-Fact-80E2006CF272FF94BA131ECF8BC478A6"
      unitRef="usd">537156000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
      contextRef="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember"
      decimals="-3"
      id="d27604789e2282-wk-Fact-E97B2CF9198AFEB123773A00F6BA6D84"
      unitRef="usd">1889000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
    <us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
      contextRef="FD2019Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27604789e2301-wk-Fact-3D90AEDD2D593160981C3A00F6B287E7"
      unitRef="usd">0</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
    <us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
      contextRef="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_SalesRevenueNetMember"
      decimals="-3"
      id="d27604789e2321-wk-Fact-CDA42724A3958B5EC9CA3A00F691F713"
      unitRef="usd">948000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
    <us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet
      contextRef="FD2018Q4YTD_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_ForeignExchangeForwardMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27604789e2340-wk-Fact-E392E4D983F4F36BF2083A00F6AA5651"
      unitRef="usd">-386000</us-gaap:DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet>
    <us-gaap:FairValueDisclosuresTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-8E830C1471930F10EDD51ECF8C46FC7F-0-wk-Fact-29BE30BDD6DDEE45A6EA1ECF8BED83C4">&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.41520467836257%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;12.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Fair Value Measurements&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value Measurements as of&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 2 (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level&#160;3 (2)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Assets:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Corporate and government bonds, $17,016 at cost (3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;15,314&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,346&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Liabilities:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;758&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;758&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value Measurements as of&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 2 (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level&#160;3 (2)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Assets:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Money market funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,730&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Corporate and government bonds, $30,035 at cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;29,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Convertible note&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;776&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,730&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;30,381&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Liabilities:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,130&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,130&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 2 fair value estimates are based on observable inputs other than quoted prices in active markets for identical assets and liabilities, quoted prices for identical or similar assets or liabilities in inactive markets, or other inputs that &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-left:48px;padding-top:6px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 3 fair value estimates are based on inputs that are generally unobservable and typically reflect management&#x2019;s estimates of assumptions that market participants would use in pricing the asset or liability. The fair values are therefore determined using model-based techniques, including option pricing and discounted cash flow models.&#160;Unobservable inputs used in the models are significant to the fair values of the assets and liabilities.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of&#160;December&#160;28, 2019, the Company&#x2019;s investments had maturity dates ranging from February 2020 to March 2021.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table provides a summary of changes in fair value of our Level 3 investment for the twelve months ended December 28, 2019 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:81%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Conversion of convertible note&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-8B68E2D0514B2035424A1ECF8C46BA83-0-wk-Fact-DC6E7F7EB2F6890F76E81ECF8BEE286D">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value Measurements as of&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 2 (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level&#160;3 (2)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Assets:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Corporate and government bonds, $17,016 at cost (3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,032&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;15,314&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,346&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Liabilities:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;758&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;758&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company&#x2019;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="11" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fair Value Measurements as of&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level 2 (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Level&#160;3 (2)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Assets:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Money market funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,730&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Corporate and government bonds, $30,035 at cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;29,605&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Convertible note&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;776&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total assets measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,730&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;30,381&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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:3px double #000000;"&gt;&lt;div style="overflow:hidden;height:20px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Liabilities:&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Derivative instruments (Note 11) &lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,130&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total liabilities measured at fair value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,130&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 2 fair value estimates are based on observable inputs other than quoted prices in active markets for identical assets and liabilities, quoted prices for identical or similar assets or liabilities in inactive markets, or other inputs that &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-left:48px;padding-top:6px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Level 3 fair value estimates are based on inputs that are generally unobservable and typically reflect management&#x2019;s estimates of assumptions that market participants would use in pricing the asset or liability. The fair values are therefore determined using model-based techniques, including option pricing and discounted cash flow models.&#160;Unobservable inputs used in the models are significant to the fair values of the assets and liabilities.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:24px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(3)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of&#160;December&#160;28, 2019, the Company&#x2019;s investments had maturity dates ranging from February 2020 to March 2021.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:AvailableForSaleSecurities
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e920-wk-Fact-0679D643BF5EBAC155271ECF8BEE8E26"
      unitRef="usd">0</us-gaap:AvailableForSaleSecurities>
    <us-gaap:AvailableForSaleSecurities
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e939-wk-Fact-234377EDE5AD7BEBF25A1ECF8BA8E6A0"
      unitRef="usd">17032000</us-gaap:AvailableForSaleSecurities>
    <us-gaap:AvailableForSaleSecurities
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e958-wk-Fact-CE35F7AAA6335079EB0A1ECF8BF27B1D"
      unitRef="usd">0</us-gaap:AvailableForSaleSecurities>
    <us-gaap:DerivativeAssets
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e974-wk-Fact-78328EFD5ABFF5E247EF1ECF8C13CC62"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e993-wk-Fact-F58568BFB6FF6203D2A91ECF8BA1D3AC"
      unitRef="usd">15314000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1012-wk-Fact-DD0DA2EB920E5D878D7B1ECF8BA2D0B7"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1038-wk-Fact-26F6CAC6170C66383F031ECF8BA38093"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1057-wk-Fact-2D60AA99DF82EEF936171ECF8C0DF2AB"
      unitRef="usd">32346000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1076-wk-Fact-AD8DF91E83824F8045A41ECF8BF3B0E7"
      unitRef="usd">0</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1221-wk-Fact-87830D025A86CB1F05CC1ECF8C259345"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1240-wk-Fact-3A121E1A4B50FCBBF5981ECF8BA38C77"
      unitRef="usd">758000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1259-wk-Fact-7BD8029E8C2427BDEDC61ECF8C0BDDB2"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1280-wk-Fact-FD15F9C94AFC3695C54F1ECF8BA7773A"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1299-wk-Fact-2D552046BBDE83B0FB2E1ECF8BFA882C"
      unitRef="usd">758000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="FI2019Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1318-wk-Fact-14A73DF38CB9776AACC01ECF8BE37BA0"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1611-wk-Fact-2B15A604EB239E2A620F1ECF8BA46047"
      unitRef="usd">3730000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1630-wk-Fact-8C3D56DB839B220758C71ECF8BA20D49"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_CashAndCashEquivalentsAxis_us-gaap_MoneyMarketFundsMember_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1649-wk-Fact-1DFA9B80520678DA2DC61ECF8BA7DC5D"
      unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:AvailableForSaleSecurities
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1665-wk-Fact-76D6FC8618D7FF6FD48E1ECF8BAA6BE9"
      unitRef="usd">0</us-gaap:AvailableForSaleSecurities>
    <us-gaap:AvailableForSaleSecurities
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1684-wk-Fact-76CFAF2E5C7C8A6F4FAB1ECF8BA93A87"
      unitRef="usd">29605000</us-gaap:AvailableForSaleSecurities>
    <us-gaap:AvailableForSaleSecurities
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1703-wk-Fact-89F8066B2ED77B662D8D1ECF8BA78177"
      unitRef="usd">0</us-gaap:AvailableForSaleSecurities>
    <us-gaap:NotesReceivableFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1724-wk-Fact-914B569C6FCFC834E965308A42C9CB26"
      unitRef="usd">0</us-gaap:NotesReceivableFairValueDisclosure>
    <us-gaap:NotesReceivableFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1743-wk-Fact-4BEA330B255F8E4489C73089FABF6ACF"
      unitRef="usd">0</us-gaap:NotesReceivableFairValueDisclosure>
    <us-gaap:NotesReceivableFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1762-wk-Fact-999F82DBA5A5E4C838BE3088C686E08B"
      unitRef="usd">2000000</us-gaap:NotesReceivableFairValueDisclosure>
    <us-gaap:DerivativeAssets
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1783-wk-Fact-7BE5169CA44E8429F2441ECF8BABEF99"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1802-wk-Fact-368BC14EFCC475CA73381ECF8BA5B777"
      unitRef="usd">776000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1821-wk-Fact-31CFB86DDE18EE69F2D11ECF8BA44DE4"
      unitRef="usd">0</us-gaap:DerivativeAssets>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1847-wk-Fact-1CA3EC093AA0078DDD471ECF8BA5C087"
      unitRef="usd">3730000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1866-wk-Fact-DA65B3225834E32AA2B31ECF8BA6BC0F"
      unitRef="usd">30381000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:AssetsFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e1885-wk-Fact-9DB1085D644405C2A8951ECF8BA30673"
      unitRef="usd">2000000</us-gaap:AssetsFairValueDisclosure>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e2031-wk-Fact-49B3F05A36DB5FC66E4D1ECF8BA32652"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e2050-wk-Fact-CEFF7BD7E8DC40C2C0FF1ECF8BA5CAB7"
      unitRef="usd">1130000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e2069-wk-Fact-073B2B66BA3F3F77D23D1ECF8BA841C6"
      unitRef="usd">0</us-gaap:DerivativeLiabilities>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel1Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e2090-wk-Fact-DC31931F2FD101BD6C941ECF8BA64AF4"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel2Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e2109-wk-Fact-0C102B2E6A1BB9EEEB691ECF8BAA7519"
      unitRef="usd">1130000</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:LiabilitiesFairValueDisclosure
      contextRef="FI2018Q4_us-gaap_FairValueByFairValueHierarchyLevelAxis_us-gaap_FairValueInputsLevel3Member_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember"
      decimals="-3"
      id="d27606649e2128-wk-Fact-B46AA6A8D23FCEB412DC1ECF8BA66FFB"
      unitRef="usd">0</us-gaap:LiabilitiesFairValueDisclosure>
    <us-gaap:ConvertibleDebtTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-E31BB63BC4326A0F195B1ECF8C46D18F-0-wk-Fact-A1B4AE2A8355BF66E0B71ECF8BECB61A">&lt;div style="line-height:120%;padding-top:6px;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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:81%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 29, 2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Conversion of convertible note&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,000&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance as of December 28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ConvertibleDebtTableTextBlock>
    <us-gaap:NotesReceivableFairValueDisclosure
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27606649e2199-wk-Fact-FE75E863E8B444FCA9C01ECF8BF574B2"
      unitRef="usd">2000000</us-gaap:NotesReceivableFairValueDisclosure>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27606649e2214-wk-Fact-927052633F9057593B561ECF8BF5CF34"
      unitRef="usd">2000000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3>
    <us-gaap:NotesReceivableFairValueDisclosure
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27606649e2240-wk-Fact-0B548B72F91F0D7F79001ECF8BF53AB0"
      unitRef="usd">0</us-gaap:NotesReceivableFairValueDisclosure>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-DA0B30A12FD3D214F72F1ECF8C46EE75-0-wk-Fact-D82F3E3F9923406C47671ECF8C27296E">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;13.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Stockholders' Equity&lt;/span&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:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Preferred Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company has authorized &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,000,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares of undesignated preferred stock with a par value of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.01&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; per share. None of the preferred shares were issued and outstanding at &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Common Stock&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Common stockholders are entitled to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;one&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; vote for each share held and to receive dividends if and when declared by the Company's board of directors and subject to and qualified by the rights of holders of the preferred stock. Upon dissolution or liquidation of the Company, holders of common stock will be entitled to receive all available assets subject to any preferential rights of any then outstanding preferred stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Share Repurchase Activity&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On February 27, 2018, the Company's board of directors approved a stock repurchase program authorizing up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$50.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in share repurchases. This share repurchase program commenced on March 28, 2018 with an expiration date of December 28, 2018. As of June 30, 2018, the Company completed the repurchase program and repurchased &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;798,794&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares of common stock totaling &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$50.0 million&lt;/span&gt;&lt;/span&gt;.</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="FI2019Q4"
      decimals="0"
      id="d27603152e638-wk-Fact-628A46269E3ACB606AF21ECF8C2B663B"
      unitRef="shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27603152e642-wk-Fact-83EE26230C71F264B9A61ECF8C282007"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <irbt:CommonStockNumberOfVotesPerShare
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27603152e660-wk-Fact-6A926D62AEBC428683531ECF8C29F6C4"
      unitRef="vote">1</irbt:CommonStockNumberOfVotesPerShare>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1
      contextRef="I2018Q1RepurchaseDate"
      decimals="-5"
      id="d27603152e670-wk-Fact-441101290E47D7FFA87C1ECF8C271446"
      unitRef="usd">50000000.0</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="FD2018Q4YTD"
      decimals="0"
      id="d27603152e674-wk-Fact-D2EC8A4CB589AA259AD51ECF8C2A71D0"
      unitRef="shares">798794</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27603152e678-wk-Fact-B0A113F844B07B3ACDC51ECF8C29D8BE"
      unitRef="usd">50000000.0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:CompensationAndEmployeeBenefitPlansTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-7A172646C55573030F5A1ECF8C46CF5E-0-wk-Fact-BB771BE7DBD4C2DDCF231ECF8BAA60EF">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:5%;"/&gt;&lt;td style="width:95%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;14.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Stock-Based Compensation&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company has awards and options outstanding under &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;three&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; stock incentive plans: the 2005 Stock Option and Incentive Plan (the "2005 Plan"), the 2015 Stock Option and Incentive Plan (the "2015 Plan") and the 2018 Stock Option and Incentive Plan (the "2018 Plan" and together with 2005 Plan  and the 2015 Plan, the "Plans"). The 2018 Plan is the only one of the three plans under which new awards may currently be granted.  Under the 2018 Plan, which became effective on May 23, 2018, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,750,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;shares were initially reserved for issuance in the form of incentive stock options, non-qualified stock options, stock appreciation rights, restricted stock awards, restricted stock units, unrestricted stock awards, cash-based awards, and dividend equivalent rights. Stock awards returned to the Plans, with the exception of those issued under the 2005 Plan, as a result of their expiration, cancellation or termination are automatically made available for issuance under the 2018 Plan. Eligibility for incentive stock options is limited to those individuals whose employment status would qualify them for the tax treatment associated with incentive stock options in accordance with the Internal Revenue Code. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, there were &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,293,482&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares available for future grant under the 2018 Plan. The Company recognized &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$23.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$25.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$19.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of stock-based compensation expense during the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, December 29, 2018, and December 30, 2017, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Stock-based compensation breaks down by expense classification as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cost of revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,486&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,407&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,082&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Research and development&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,186&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,494&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,009&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Selling and marketing&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,323&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,842&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,571&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;General and administrative&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,749&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,089&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23,744&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,804&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;19,751&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Options granted under the Plans are exercisable in full at any time subsequent to vesting, generally vest over &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;four years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and expire &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;five years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; or &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;ten years&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; from the date of grant or, if earlier, 90&#160;days from employee termination. The exercise price of stock options is typically equal to the Company's closing stock price on the date of grant.  &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the unamortized compensation costs associated with stock options was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; with a weighted-average remaining recognition period of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.61&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes stock option activity for fiscal years 2019, 2018 and 2017:&lt;/span&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="11"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:41%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Number of&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Exercise Price&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Remaining&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Contractual Term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Aggregate&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Intrinsic&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Value(1)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December 31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,088,174&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32.27&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,975&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;57.33&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(367,267&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28.79&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Canceled&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(18,928&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36.72&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;30, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;712,954&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.34&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(239,830&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;33.40&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Canceled&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(10,863&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;46.20&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;462,261&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.55&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(127,024&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32.95&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Canceled&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(12,329&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;37.03&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;322,908&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.08&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.47 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.65 million&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested and expected to vest at December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;322,908&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.08&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.47 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.65 million&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercisable as of December&#160;28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;293,159&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.30&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.35 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.32 million&lt;/span&gt;&lt;/span&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;span style="font-family:inherit;font-size:10pt;"&gt;&#160;_________________________&lt;/span&gt;&lt;/div&gt;&lt;table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"&gt;&lt;tr&gt;&lt;td style="width:48px;"/&gt;&lt;td/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top"&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:0px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The aggregate intrinsic value on the table above represents the difference between the Company's closing stock price on &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$50.20&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and the exercise price of the underlying in-the-money option.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div style="line-height:120%;padding-left:4px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;During fiscal years 2019, 2018, and 2017, the total intrinsic value of stock options exercised was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$8.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$14.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$21.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively.  &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Time-based Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Time-based restricted stock units entitle the holder to a specific number of shares of common stock upon vesting, typically over a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;four year&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; period. As of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the unamortized compensation costs associated with restricted stock units was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$49.2 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; with a weighted-average remaining recognition period of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.53&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the time-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:&lt;/span&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="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:69%;"/&gt;&lt;td style="width:14%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Number of&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Shares&#160;Underlying&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Restricted Stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Grant Date Fair&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December 31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;935,179&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.07&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;396,164&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;72.63&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(351,543&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;33.73&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(41,347&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;39.52&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;30, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;938,453&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;51.24&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;307,614&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;81.55&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(351,816&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;47.30&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(38,362&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;60.62&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;855,889&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;63.32&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;407,325&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;79.91&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(358,119&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54.89&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(85,863&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;76.85&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;819,232&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;73.83&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-left:4px;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The aggregate intrinsic value of outstanding time-based restricted stock units at &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$42.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; based on the Company's closing stock price on &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$50.20&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, with a weighted average remaining contractual term of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.52&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:13px;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Performance-Based Restricted Stock Units&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:13px;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company grants performance-based restricted stock units ("PSUs") to certain of its employees. The PSUs have performance metrics based on financial performance of the Company measured at the end of a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;three year&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; performance period. For the 2017 grant year, the performance metric for these awards is based on revenue, operating income and/or operating income percent, with a threshold requirement for a minimum amount of revenue growth. Starting in 2018, the Company has removed revenue as a performance metric in the PSU plan design and changed the payout metric from three-year cumulative operating income as a percentage of annual revenue to three-year cumulative operating income in dollars. The number of shares actually earned at the end of the three-year period will range from &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;200%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the target number of PSUs granted based on the Company&#x2019;s performance against the performance conditions.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The unamortized fair value as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; associated with performance based restricted stock units was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; with a weighted-average remaining recognition period of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.04&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the performance-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:&lt;/span&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.41520467836257%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:69%;"/&gt;&lt;td style="width:14%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Number of&lt;br/&gt;Shares&#160;Underlying&lt;br/&gt;PSU&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;br/&gt;Grant Date Fair&lt;br/&gt;Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December 31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;163,911&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.03&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;105,650&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;57.33&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(24,792&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;43.35&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,708&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;39.71&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;30, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;242,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;43.97&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;91,538&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;68.41&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(56,259&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.30&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,221&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;45.71&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;274,119&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54.10&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;70,827&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;122.20&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(78,943&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;33.33&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(49,772&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;78.29&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;216,231&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;78.42&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;text-indent:29px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The aggregate intrinsic value of outstanding PSUs was &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$11.3 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; based on the Company's closing stock price on &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$50.20&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; with a weighted average remaining contractual term of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.04&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; years.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;text-indent:29px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In May 2017, the Company&#x2019;s stockholders approved the 2017 Employee Stock Purchase Plan ("ESPP").  Eligible employees may purchase the Company&#x2019;s common stock through payroll deductions at a price equal to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;85%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the lower of the fair market values of the stock as of the beginning or the end of six-month offering periods beginning November 15 and May 15 of each year.  An employee&#x2019;s payroll deductions under the ESPP are limited to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;15%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the employee&#x2019;s compensation, up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$4,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; each period, for the purchase of common stock not to exceed &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares per offering period.  As of December 28, 2019, there were &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;570,962&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares reserved for future issuance under the ESPP.  The Company recognized &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.1 million&lt;/span&gt;&lt;/span&gt; of stock-based compensation expense during the fiscal years ended December&#160;28, 2019, December 29, 2018, and December 30, 2017, respectively.</us-gaap:CompensationAndEmployeeBenefitPlansTextBlock>
    <irbt:SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27610382e635-wk-Fact-BCDEC77B78502A5DCFB81ECF8BAB5243"
      unitRef="plan">3</irbt:SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="I2018Q2SD"
      decimals="INF"
      id="d27610382e639-wk-Fact-548E4760DE1CF26B28241ECF8BB6E8FC"
      unitRef="shares">1750000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27610382e647-wk-Fact-848712AB87CB2A7781231ECF8BB1B1EC"
      unitRef="shares">1293482</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27610382e651-wk-Fact-89338316458D115055AB1ECF8BB05ACD"
      unitRef="usd">23700000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27610382e656-wk-Fact-77DDB94A9D05545EB3B91ECF8BB9173A"
      unitRef="usd">25800000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27610382e660-wk-Fact-0594245C0861E9F10F2C1ECF8BB840A8"
      unitRef="usd">19800000</us-gaap:AllocatedShareBasedCompensationExpense>
    <irbt:SharebasedcompensationexpensebyclassificationTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-54FCA43FB248303D140C30C7E75A2B48-0-wk-Fact-5B5A865102539CA5B01730CA53472735">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Stock-based compensation breaks down by expense classification as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Cost of revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,486&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,407&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,082&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Research and development&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,186&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,494&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,009&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Selling and marketing&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,323&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,842&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,571&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;General and administrative&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;9,749&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,089&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;23,744&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,804&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;19,751&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</irbt:SharebasedcompensationexpensebyclassificationTableTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27610382e832-wk-Fact-06AB28C79F57AEF755221ECF8BEA72C5"
      unitRef="usd">1486000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27610382e851-wk-Fact-D33D402872014652829F1ECF8BED545F"
      unitRef="usd">1407000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember"
      decimals="-3"
      id="d27610382e870-wk-Fact-FA5E541CB6281D7A76411ECF8BE85755"
      unitRef="usd">1082000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember"
      decimals="-3"
      id="d27610382e886-wk-Fact-68A64B527408C12DD69B1ECF8BED48E0"
      unitRef="usd">9186000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember"
      decimals="-3"
      id="d27610382e905-wk-Fact-F4568D3CEF56D07F8A5D1ECF8BEADE19"
      unitRef="usd">7494000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_ResearchAndDevelopmentExpenseMember"
      decimals="-3"
      id="d27610382e924-wk-Fact-F6622E9F845FA94952A71ECF8BEC9816"
      unitRef="usd">5009000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember"
      decimals="-3"
      id="d27610382e945-wk-Fact-AD1B1ADF882480CFE7061ECF8BEDE6AA"
      unitRef="usd">3323000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember"
      decimals="-3"
      id="d27610382e964-wk-Fact-256AB759F0D2A6D07C041ECF8BEEC553"
      unitRef="usd">2842000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_SellingAndMarketingExpenseMember"
      decimals="-3"
      id="d27610382e983-wk-Fact-0AB650E8F277CC3F55111ECF8BE9F681"
      unitRef="usd">2571000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember"
      decimals="-3"
      id="d27610382e1004-wk-Fact-0686CFC22930A9F8BBF41ECF8BEAF7AA"
      unitRef="usd">9749000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember"
      decimals="-3"
      id="d27610382e1023-wk-Fact-1EA3B62E006701A2C4AF1ECF8BE9096D"
      unitRef="usd">14061000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_GeneralAndAdministrativeExpenseMember"
      decimals="-3"
      id="d27610382e1042-wk-Fact-C5B1E6219D915E2402491ECF8BE9E1B7"
      unitRef="usd">11089000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27610382e1068-wk-Fact-C385586B044D4EEEC87C1ECF8BE88DCE"
      unitRef="usd">23744000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27610382e1087-wk-Fact-14B930C1984CD22FA3451ECF8BECEA3C"
      unitRef="usd">25804000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27610382e1106-wk-Fact-24BFB9E9E4C8B524E7861ECF8BE85B91"
      unitRef="usd">19751000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d27610382e1122-wk-Fact-C8D2E972514FE8B961022CA5FF5DFF1F">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d27610382e1126-wk-Fact-FBFEB2FFF52162D28A592C94A0EB1786">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d27610382e1130-wk-Fact-BA5D2D9290FAB91DD9852CA48A1F12FA">P10Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27610382e1141-wk-Fact-47A255C3AB0D51E53A9C1ECF8BBED767"
      unitRef="usd">400000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockOptionMember"
      id="d27610382e1145-wk-Fact-9FA5EC522BD3F15C28151ECF8BB6448C">P0Y7M9D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-16EA859B01F05475F90A1ECF8C479E4C-0-wk-Fact-5C4183103F18DDAE82F41ECF8BB53D4B">&lt;div style="line-height:120%;padding-top:6px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes stock option activity for fiscal years 2019, 2018 and 2017:&lt;/span&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="11"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:41%;"/&gt;&lt;td style="width:12%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:15%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Number of&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Shares&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Exercise Price&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Remaining&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Contractual Term&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Aggregate&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Intrinsic&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Value(1)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December 31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,088,174&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32.27&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,975&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;57.33&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(367,267&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;28.79&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Canceled&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(18,928&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;36.72&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;30, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;712,954&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.34&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(239,830&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;33.40&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Canceled&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(10,863&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;46.20&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;462,261&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.55&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercised&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(127,024&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32.95&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Canceled&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(12,329&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;37.03&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;322,908&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.08&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.47 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.65 million&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested and expected to vest at December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;322,908&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.08&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.47 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.65 million&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Exercisable as of December&#160;28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;293,159&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.30&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2.35 years&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:center;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$5.32 million&lt;/span&gt;&lt;/span&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;span style="font-family:inherit;font-size:10pt;"&gt;&#160;_________________________&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:0px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The aggregate intrinsic value on the table above represents the difference between the Company's closing stock price on &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$50.20&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and the exercise price of the underlying in-the-money option.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2016Q4"
      decimals="INF"
      id="d27610382e1269-wk-Fact-A67A523A562B2DEF20F91ECF8BA9A8A8"
      unitRef="shares">1088174</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2016Q4"
      decimals="2"
      id="d27610382e1288-wk-Fact-B67FA6F9F6E240D27E151ECF8BC39EB2"
      unitRef="usdPerShare">32.27</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="FD2017Q4YTD"
      decimals="0"
      id="d27610382e1323-wk-Fact-8D6AE5D28589B45AC3211ECF8BACD502"
      unitRef="shares">10975</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27610382e1337-wk-Fact-7FF35C4D0EBB40FEF8551ECF8B9C6FCE"
      unitRef="usdPerShare">57.33</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2017Q4YTD"
      decimals="INF"
      id="d27610382e1377-wk-Fact-8E25A4B182DF066383E31ECF8B9CE9DD"
      unitRef="shares">367267</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27610382e1392-wk-Fact-E1B2E5948CA745CBFA801ECF8B955D60"
      unitRef="usdPerShare">28.79</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="FD2017Q4YTD"
      decimals="INF"
      id="d27610382e1432-wk-Fact-DD78829F7D131588203D1ECF8B9D9D39"
      unitRef="shares">18928</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="FD2017Q4YTD"
      decimals="2"
      id="d27610382e1447-wk-Fact-299E8A95F693D954AF121ECF8BA503B3"
      unitRef="usdPerShare">36.72</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2017Q4"
      decimals="INF"
      id="d27610382e1487-wk-Fact-0CABD302D904013C26DD1ECF8B9EC519"
      unitRef="shares">712954</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2017Q4"
      decimals="2"
      id="d27610382e1506-wk-Fact-237C6B383E0A8DEF49871ECF8B96A612"
      unitRef="usdPerShare">34.34</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="FD2018Q4YTD"
      decimals="0"
      id="d27610382e1541-wk-Fact-81B90C6A9BE7124204A11ECF8BA8AEE4"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d27610382e1555-wk-Fact-5557FBBF79D86D2F77311ECF8BA7153D"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2018Q4YTD"
      decimals="INF"
      id="d27610382e1595-wk-Fact-2F91DD8C94519FAFB8151ECF8BA595C4"
      unitRef="shares">239830</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d27610382e1610-wk-Fact-9763D938B0018DDA072F1ECF8BACB2DA"
      unitRef="usdPerShare">33.40</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="FD2018Q4YTD"
      decimals="INF"
      id="d27610382e1650-wk-Fact-5DDAE77C5A123B5881601ECF8B9F5273"
      unitRef="shares">10863</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="FD2018Q4YTD"
      decimals="2"
      id="d27610382e1665-wk-Fact-423C861652DD3F65F07D1ECF8BA924DE"
      unitRef="usdPerShare">46.20</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2018Q4"
      decimals="INF"
      id="d27610382e1705-wk-Fact-318A7BE74F79C2D732911ECF8BA24115"
      unitRef="shares">462261</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2018Q4"
      decimals="2"
      id="d27610382e1724-wk-Fact-C14AD8D120E9D2C50B331ECF8BC1C431"
      unitRef="usdPerShare">34.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
      contextRef="FD2019Q4YTD"
      decimals="0"
      id="d27610382e1759-wk-Fact-1FF571755253A044765E1ECF8B974C25"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d27610382e1773-wk-Fact-A0715E919E42F524EDCF1ECF8B9D1B53"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d27610382e1814-wk-Fact-8D4DE694503DE49605321ECF8BA3948A"
      unitRef="shares">127024</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d27610382e1829-wk-Fact-33380844F6935371A02A1ECF8BA65A9D"
      unitRef="usdPerShare">32.95</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d27610382e1869-wk-Fact-532D098D70BCEDC353B71ECF8BA05D39"
      unitRef="shares">12329</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
      contextRef="FD2019Q4YTD"
      decimals="2"
      id="d27610382e1884-wk-Fact-E4D909C016B8597BA0DF1ECF8B9F1A54"
      unitRef="usdPerShare">37.03</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27610382e1924-wk-Fact-9FE87AA19205F8732BDC1ECF8B97C7D6"
      unitRef="shares">322908</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d27610382e1943-wk-Fact-D2BD09433D21B9C180F91ECF8BA0530F"
      unitRef="usdPerShare">35.08</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
      contextRef="FD2019Q4YTD"
      id="d27610382e1957-wk-Fact-862914F50AD793817ACC1ECF8BAD631C">P2Y5M19D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
      contextRef="FI2019Q4"
      decimals="-4"
      id="d27610382e1967-wk-Fact-5E941C5CBBA0D933FA761ECF8BAB9815"
      unitRef="usd">5650000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27610382e1978-wk-Fact-26D56C37293D92B5D5AC1ECF8BACB134"
      unitRef="shares">322908</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d27610382e1997-wk-Fact-5142E9EF2D60474DD9A11ECF8BA7F378"
      unitRef="usdPerShare">35.08</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
      contextRef="FD2019Q4YTD"
      id="d27610382e2011-wk-Fact-42417B6046992862568A1ECF8B9F6FDD">P2Y5M19D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
      contextRef="FI2019Q4"
      decimals="-4"
      id="d27610382e2021-wk-Fact-C8BE46DAEFC7043567261ECF8BAB1E2D"
      unitRef="usd">5650000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
      contextRef="FI2019Q4"
      decimals="INF"
      id="d27610382e2032-wk-Fact-A85B82711708246339DD1ECF8B99B2D8"
      unitRef="shares">293159</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d27610382e2051-wk-Fact-7C80536FAA0BBEC3EFD21ECF8BAD81F7"
      unitRef="usdPerShare">34.30</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1
      contextRef="FD2019Q4YTD"
      id="d27610382e2065-wk-Fact-D08AF91CBF2F4C73646C1ECF8B9EA6A2">P2Y4M6D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1
      contextRef="FI2019Q4"
      decimals="-4"
      id="d27610382e2075-wk-Fact-817FD098F860D9BDB1121ECF8BAE48BD"
      unitRef="usd">5320000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1>
    <us-gaap:SharePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d27610382e2097-wk-Fact-4EE791C055AB178FB64A1ECF8BBD231F"
      unitRef="usdPerShare">50.20</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27610382e2128-wk-Fact-F8174E8D7E1F41F4FD271ECF8BB57E81"
      unitRef="usd">8900000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27610382e2132-wk-Fact-BF3AA31BC00E02AAAFF51ECF8BB9A116"
      unitRef="usd">14900000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27610382e2136-wk-Fact-B4ECB01C322016AC00761ECF8BAF4012"
      unitRef="usd">21800000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      id="d27610382e2173-wk-Fact-F0A8C4F610D61F04F1D40D588F9219D7">four year</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="-5"
      id="d27610382e2181-wk-Fact-CF148398C4303EC020621ECF8BAE71CB"
      unitRef="usd">49200000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      id="d27610382e2185-wk-Fact-F79606022A16040BBCDA1ECF8BB66433">P2Y6M10D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-56760F7735292742676F1ECF8C478146-0-wk-Fact-A33E753D67B1A70671351ECF8BB75FA0">&lt;div style="line-height:120%;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the time-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:&lt;/span&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="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:69%;"/&gt;&lt;td style="width:14%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Number of&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Shares&#160;Underlying&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Restricted Stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Grant Date Fair&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December 31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;935,179&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.07&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;396,164&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;72.63&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(351,543&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;33.73&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(41,347&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;39.52&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;30, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;938,453&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;51.24&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;307,614&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;81.55&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(351,816&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;47.30&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(38,362&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;60.62&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;855,889&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;63.32&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;407,325&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;79.91&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(358,119&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54.89&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(85,863&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;76.85&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;819,232&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;73.83&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2273-wk-Fact-EAC1C3B8AEBB7BC69B661ECF8B9F7C8A"
      unitRef="shares">935179</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2292-wk-Fact-7BB93D1297D87B5B05071ECF8BA8EB82"
      unitRef="usdPerShare">35.07</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2307-wk-Fact-820844BD3F93CD3154051ECF8B9D746D"
      unitRef="shares">396164</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2321-wk-Fact-2602DC6CD97B07589C621ECF8BA391CD"
      unitRef="usdPerShare">72.63</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2341-wk-Fact-14A112F9ECA091AC1F931ECF8B99953E"
      unitRef="shares">351543</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2356-wk-Fact-5FE8CB01DEBEFD9D8CA81ECF8B95A38A"
      unitRef="usdPerShare">33.73</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2376-wk-Fact-5928E180C9F30A5634BF1ECF8BA8E83F"
      unitRef="shares">41347</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2391-wk-Fact-6A086062B24CC57C5F581ECF8B9AD3E7"
      unitRef="usdPerShare">39.52</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2411-wk-Fact-818D427A4988617729841ECF8BB1ABAC"
      unitRef="shares">938453</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2430-wk-Fact-458ECB0CA1D4755B204F1ECF8BA2CD97"
      unitRef="usdPerShare">51.24</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2445-wk-Fact-04375BDC47433809D0AF1ECF8BA5239E"
      unitRef="shares">307614</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2459-wk-Fact-635E90835B6FC18E3A0B1ECF8B9C6681"
      unitRef="usdPerShare">81.55</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2479-wk-Fact-30E249BB7B79D899030B1ECF8B8F289C"
      unitRef="shares">351816</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2494-wk-Fact-F5D9535046ECCC4C0A801ECF8B9D5F66"
      unitRef="usdPerShare">47.30</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2514-wk-Fact-0094D15F47F45976A10C1ECF8B96A335"
      unitRef="shares">38362</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2529-wk-Fact-EE5AEC2FB25DE75838B31ECF8B9E4590"
      unitRef="usdPerShare">60.62</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2549-wk-Fact-F4015394238B9180AED31ECF8B93BEB1"
      unitRef="shares">855889</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2568-wk-Fact-9365489BDC34FD9E5F331ECF8BAE749F"
      unitRef="usdPerShare">63.32</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2583-wk-Fact-344AA0088DD11C873B791ECF8B95D89D"
      unitRef="shares">407325</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2597-wk-Fact-6A7F13C005F2DD63ABAB1ECF8BA134D9"
      unitRef="usdPerShare">79.91</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2618-wk-Fact-64FDFB320A1183B25BC71ECF8B9BAE4D"
      unitRef="shares">358119</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2633-wk-Fact-0320C0CCBA7544F95B691ECF8B9EA3EE"
      unitRef="usdPerShare">54.89</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2653-wk-Fact-BA3030C6FEF8FB69998E1ECF8BA56B30"
      unitRef="shares">85863</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2668-wk-Fact-4E4756D0FD92A52F57501ECF8BA0CEE2"
      unitRef="usdPerShare">76.85</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="INF"
      id="d27610382e2688-wk-Fact-6B2BE6A258FD84221F4E1ECF8BAA566F"
      unitRef="shares">819232</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="2"
      id="d27610382e2707-wk-Fact-3EBD4960A5C75032E27A1ECF8B9C51AD"
      unitRef="usdPerShare">73.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      decimals="-5"
      id="d27610382e2731-wk-Fact-73113E0B8EED36E1FD831ECF8BB44BB6"
      unitRef="usd">42800000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding>
    <us-gaap:SharePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d27610382e2739-wk-Fact-4EE791C055AB178FB64A1ECF8BBD231F"
      unitRef="usdPerShare">50.20</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember"
      id="d27610382e2743-wk-Fact-69589B65216899BC69FE1ECF8BAA84D5">P1Y6M7D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      id="d27610382e2753-wk-Fact-F5A0097DEEF56C216A4A0D617A011CA9">three year</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MinimumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e2757-wk-Fact-1387A6DDB98B0BA9BC311ECF8BBC76F7"
      unitRef="number">0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage
      contextRef="FD2019Q4YTD_srt_RangeAxis_srt_MaximumMember_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e2761-wk-Fact-FF19C889D78B207E66A31ECF8BB755C4"
      unitRef="number">2</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="-5"
      id="d27610382e2774-wk-Fact-F5E79927C2A639450A8F1ECF8BBCEC27"
      unitRef="usd">1700000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      id="d27610382e2778-wk-Fact-56C7A0056299D5FB24241ECF8BBB7140">P1Y14D</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-77CF141EB6DB164F052E1ECF8C474D9A-0-wk-Fact-65AB862DF1158A82C3861ECF8BB80358">&lt;div style="line-height:120%;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table summarizes the performance-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:&lt;/span&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.41520467836257%;border-collapse:collapse;text-align:left;"&gt;&lt;tr&gt;&lt;td colspan="7"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:69%;"/&gt;&lt;td style="width:14%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:13%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Number of&lt;br/&gt;Shares&#160;Underlying&lt;br/&gt;PSU&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Weighted&#160;Average&lt;br/&gt;Grant Date Fair&lt;br/&gt;Value&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December 31, 2016&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;163,911&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35.03&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;105,650&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;57.33&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(24,792&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;43.35&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,708&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;39.71&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;30, 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;242,061&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;43.97&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;91,538&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;68.41&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(56,259&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;34.30&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,221&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;45.71&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;29, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;274,119&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;54.10&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Granted&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;70,827&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;122.20&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Vested&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(78,943&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;33.33&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Forfeited&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(49,772&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;78.29&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Outstanding at December&#160;28, 2019&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;216,231&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;78.42&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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%;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e2848-wk-Fact-60FE2C89CEC135618FCF1ECF8B90D55C"
      unitRef="shares">163911</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2016Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e2867-wk-Fact-F5C61CE47B2FAE92083F1ECF8BA29E99"
      unitRef="usdPerShare">35.03</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e2882-wk-Fact-4DF312E57E255879D5421ECF8B94C9BB"
      unitRef="shares">105650</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e2896-wk-Fact-C50D6562B93B5614669C1ECF8C1C6501"
      unitRef="usdPerShare">57.33</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e2916-wk-Fact-FD68BBB2E84C39B0EAFF1ECF8B907714"
      unitRef="shares">24792</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e2931-wk-Fact-2DC26B080408AC9DA2781ECF8B8FEB8B"
      unitRef="usdPerShare">43.35</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e2951-wk-Fact-6F4A8D7D51B70A7091DA1ECF8BC4ACC0"
      unitRef="shares">2708</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e2966-wk-Fact-9C12CBEE9E830D8228DF1ECF8B9125CB"
      unitRef="usdPerShare">39.71</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e2986-wk-Fact-9DCA4BFAEEB5AFA2D2951ECF8C18455C"
      unitRef="shares">242061</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2017Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3005-wk-Fact-05931667972E4294497B1ECF8B995D66"
      unitRef="usdPerShare">43.97</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3020-wk-Fact-4C113345CE09B22CC3AF1ECF8BA699F7"
      unitRef="shares">91538</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3034-wk-Fact-75D1833F4D1A580A5F9D1ECF8B8F2DFF"
      unitRef="usdPerShare">68.41</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3054-wk-Fact-F389093B46CA3248E5D31ECF8B9AF31F"
      unitRef="shares">56259</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3069-wk-Fact-E3ECC4028D9A5F80D0AD1ECF8B97CECC"
      unitRef="usdPerShare">34.30</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3089-wk-Fact-8B973A207BEB4DCF448E1ECF8BA0659E"
      unitRef="shares">3221</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3104-wk-Fact-1680EDC2E416CE25063E1ECF8B904FB2"
      unitRef="usdPerShare">45.71</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3124-wk-Fact-761BFAE97B01D8F2E4CD1ECF8B978C80"
      unitRef="shares">274119</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2018Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3143-wk-Fact-90456D9D5C99937BEA7F1ECF8B9081A9"
      unitRef="usdPerShare">54.10</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3158-wk-Fact-3C3DB668C789FC48B06A1ECF8B9B3805"
      unitRef="shares">70827</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3172-wk-Fact-17F34FAE61D43D6C11D81ECF8B90FAB1"
      unitRef="usdPerShare">122.20</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3193-wk-Fact-83BF7F897037E57241201ECF8BA7FFF5"
      unitRef="shares">78943</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3208-wk-Fact-B104AF7A69321B443A241ECF8B95E2BA"
      unitRef="usdPerShare">33.33</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3228-wk-Fact-49D19855E06C79E8431C1ECF8B921431"
      unitRef="shares">49772</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3243-wk-Fact-7E7D571747ECA5B3C1701ECF8B915D32"
      unitRef="usdPerShare">78.29</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="INF"
      id="d27610382e3263-wk-Fact-AE32B47D311A0C8493CD1ECF8B946A58"
      unitRef="shares">216231</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="2"
      id="d27610382e3282-wk-Fact-CFF8369D6D7ABF7BDD451ECF8B9F2B42"
      unitRef="usdPerShare">78.42</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      decimals="-5"
      id="d27610382e3296-wk-Fact-0D77E5446A76E3EBFAD91ECF8BBE6A66"
      unitRef="usd">11300000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding>
    <us-gaap:SharePrice
      contextRef="FI2019Q4"
      decimals="2"
      id="d27610382e3304-wk-Fact-4EE791C055AB178FB64A1ECF8BBD231F"
      unitRef="usdPerShare">50.20</us-gaap:SharePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_PerformanceSharesMember"
      id="d27610382e3308-wk-Fact-FAC5B2E369AB3B43A27A1ECF8BB71265">P1Y14D</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms>
    <us-gaap:ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-6F540F438A5F39197C191ECF8C473793-0-wk-Fact-C474B69AB3D2975DA1921ECF8BBBC1EE">&lt;div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Employee Stock Purchase Plan&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;In May 2017, the Company&#x2019;s stockholders approved the 2017 Employee Stock Purchase Plan ("ESPP").  Eligible employees may purchase the Company&#x2019;s common stock through payroll deductions at a price equal to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;85%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the lower of the fair market values of the stock as of the beginning or the end of six-month offering periods beginning November 15 and May 15 of each year.  An employee&#x2019;s payroll deductions under the ESPP are limited to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;15%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of the employee&#x2019;s compensation, up to &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$4,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; each period, for the purchase of common stock not to exceed &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,000&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares per offering period.  As of December 28, 2019, there were &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;570,962&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; shares reserved for future issuance under the ESPP.  The Company recognized &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.1 million&lt;/span&gt;&lt;/span&gt; of stock-based compensation expense during the fiscal years ended December&#160;28, 2019, December 29, 2018, and December 30, 2017, respectively.</us-gaap:ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent
      contextRef="D2017Q2May"
      decimals="INF"
      id="d27610382e3322-wk-Fact-B3506FC539EFFC6DBA9B1ECF8BACACA9"
      unitRef="number">0.85</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate
      contextRef="I2017Q2May"
      decimals="INF"
      id="d27610382e3326-wk-Fact-BE69B5BCD8C7B5C1B97C1ECF8BB4E902"
      unitRef="number">0.15</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate>
    <irbt:SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount
      contextRef="I2017Q2May"
      decimals="0"
      id="d27610382e3330-wk-Fact-45E5BC679AB2DC644B361ECF8BBD3195"
      unitRef="usd">4000</irbt:SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee
      contextRef="D2017Q2May"
      decimals="0"
      id="d27610382e3334-wk-Fact-32D7CF0A3D581D692A471ECF8BB4553B"
      unitRef="shares">1000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember"
      decimals="0"
      id="d27610382e3338-wk-Fact-D6D4A8DFD9B3A7A36E711ECF8BAC022E"
      unitRef="shares">570962</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="FD2019Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember"
      decimals="-5"
      id="d27610382e3343-wk-Fact-4DB4B14C4F26243286E91ECF8BB4E015"
      unitRef="usd">1100000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="FD2018Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember"
      decimals="-5"
      id="d27610382e3347-wk-Fact-1D1B818F42A253C801081ECF8BB32A5E"
      unitRef="usd">1000000.0</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="FD2017Q4YTD_us-gaap_AwardTypeAxis_us-gaap_EmployeeStockMember"
      decimals="-5"
      id="d27610382e3351-wk-Fact-AEEB626681CA58237EC83A897DD6DC16"
      unitRef="usd">100000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-EDF48531714F32BB378B1ECF8C471B97-0-wk-Fact-5C032781EE692B7D416A1ECF8BAD89F5">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;15.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Commitments and Contingencies&lt;/span&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:6px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Legal Proceedings&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;From time to time and in the ordinary course of business, the Company is subject to various claims, charges and litigation. The outcome of litigation cannot be predicted with certainty and some lawsuits, claims or proceedings may be disposed of unfavorably to us, which could materially affect our financial condition or results of operations. For the following litigation matters, a liability is not probable or the amount cannot be reasonably estimated and therefore accruals have not been made.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On October 24, 2019, purported Company shareholder Miramar Firefighters&#x2019; Pension Fund filed a putative class action in the U.S. District Court for the Southern District of New York against the Company and certain of its directors and officers, captioned&#160;Miramar Firefighters&#x2019; Pension Fund v. iRobot Corporation, et al., No. 1:19-cv-09837.&#160; The complaint alleges violations of Sections 10(b) and 20(a) of the Securities Exchange Act of 1934, as amended (the "Exchange Act") and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#x2019;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#x2019;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#x2019;s allegedly inflated stock price, attorneys&#x2019; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts. A similar case captioned Campbell v. iRobot Corporation, et al., No. 1:19-cv-12483 was also filed in the U.S. District Court for the Southern District of New York and subsequently transferred to the &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;U.S. District Court for the District of Massachusetts. On January 24, 2020, the Court consolidated the Miramar and Campbell cases and appointed a lead plaintiff and lead plaintiff's Counsel.&#160; &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On December 20, 2019, purported Company shareholders David Katz and Thomas Wightman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for Southern District of New York against the Company and certain of its directors and officers, captioned&#160;David Katz and Thomas Wightman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:19-cv-11692. The complaint alleges breaches of fiduciary duties, unjust enrichment,&#160; violations of Sections 10(b) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#x2019;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#x2019;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#x2019;s allegedly inflated stock price, attorneys&#x2019; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On January 9, 2020, purported Company shareholder Robert Truman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Robert Truman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10034. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#x2019;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#x2019;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#x2019;s allegedly inflated stock price, attorneys&#x2019; fees and costs, and unspecified equitable/injunctive relief.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On January 22, 2020, purported Company shareholder Alexa Ruhfass, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Alexa Ruhfass, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10133. The complaint alleges breaches of fiduciary duties, unjust enrichment, waste of corporate assets, and violations of Sections 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#x2019;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#x2019;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#x2019;s allegedly inflated stock price, attorneys&#x2019; fees and costs, and unspecified equitable/injunctive relief.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On February 10, 2020, purported Company shareholder William Tasco, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;William Tasco, derivatively on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10253. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#x2019;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#x2019;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#x2019;s allegedly inflated stock price, attorneys&#x2019; fees and costs, and unspecified equitable/injunctive relief.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Outstanding Purchase Orders&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;At &lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:10pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, we had outstanding purchase orders aggregating approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$124.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;. The purchase orders, the majority of which are with our contract manufacturers for the purchase of inventory in the normal course of business, are for manufacturing and non-manufacturing related goods and services, and are generally cancelable without penalty.&#160; In circumstances where we determine that we have financial exposure associated with any of these commitments, we record a liability in the period in which that exposure is identified.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Guarantees and Indemnification Obligations&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company enters into standard indemnification agreements in the ordinary course of business. Pursuant to these agreements, the Company indemnifies and agrees to reimburse the indemnified party for losses incurred by the indemnified party, generally the Company&#x2019;s customers, in connection with any patent, copyright, trade secret or other proprietary right infringement claim by any third party. The term of these indemnification agreements is generally perpetual any time after execution of the agreement. The maximum potential amount of future payments the Company could be required to make under these indemnification agreements is unlimited. The Company has never incurred costs to defend lawsuits or settle claims related to these indemnification agreements. As a result, the Company believes the estimated fair value of these agreements is minimal. Accordingly, the Company has no liabilities recorded for these agreements as of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;"&gt;Warranty&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company provides warranties on most products and has established a reserve for warranty obligations based on estimated warranty costs. The reserve is included as part of accrued expenses (Note&#160;9)&#160;in the accompanying consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Activity related to the warranty accrual was as follows (in thousands):&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,264&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,464&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Liability assumed (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,186&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Provision&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,091&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,798&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,591&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Warranty usage&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(12,199&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(10,098&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(7,977&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,856&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,964&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,264&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;__________________________________&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:0px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1) &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Warranty assumed as part of the acquisition of the iRobot-related distribution business of SODC.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:ContractualObligation
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27609228e682-wk-Fact-6808AA60B762CB6C14481ECF8BC53446"
      unitRef="usd">124400000</us-gaap:ContractualObligation>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-19CC8CEF6B1EE2B1A5871ECF8C477D78-0-wk-Fact-B57EB2D63DC5FD01489C1ECF8BE5DDFC">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Activity related to the warranty accrual was as follows (in thousands):&lt;/span&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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:59%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,964&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,264&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,464&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Liability assumed (1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,186&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Provision&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,091&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,798&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,591&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Warranty usage&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(12,199&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(10,098&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(7,977&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,856&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,964&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,264&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;__________________________________&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;padding-left:0px;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;(1) &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Warranty assumed as part of the acquisition of the iRobot-related distribution business of SODC.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27609228e875-wk-Fact-7B7859BC595D3C0702151ECF8BDB8F55"
      unitRef="usd">11964000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27609228e894-wk-Fact-493803D7298C1D0DD2AD1ECF8BCDA154"
      unitRef="usd">11264000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="FI2016Q4"
      decimals="-3"
      id="d27609228e913-wk-Fact-0F211C223E9EABAE190E1ECF8BD86817"
      unitRef="usd">8464000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27609228e929-wk-Fact-325CB8242AD9499EDB041ECF8BAFDAFC"
      unitRef="usd">0</us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition>
    <us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27609228e948-wk-Fact-79B877525EE862CAD5D81ECF8BD9C852"
      unitRef="usd">0</us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition>
    <us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27609228e967-wk-Fact-272AE954D14EAC968DF91ECF8BD17FCD"
      unitRef="usd">2186000</us-gaap:StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27609228e988-wk-Fact-A7D0108061AFA72704481ECF8BD611FE"
      unitRef="usd">14091000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27609228e1007-wk-Fact-AF3A2D2F17A3D8B6E32F1ECF8BCC8D4D"
      unitRef="usd">10798000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualWarrantiesIssued
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27609228e1026-wk-Fact-E3119F750362E10A12331ECF8BD6B288"
      unitRef="usd">8591000</us-gaap:StandardProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27609228e1047-wk-Fact-7817382FC0CE488259021ECF8BD33375"
      unitRef="usd">12199000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27609228e1067-wk-Fact-E315F62BC87731AD551C1ECF8BDEA66D"
      unitRef="usd">10098000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27609228e1087-wk-Fact-A9E2EA1169A3C97CBAC41ECF8BDC33A7"
      unitRef="usd">7977000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27609228e1114-wk-Fact-7AAD57E2498419B904231ECF8BDE477D"
      unitRef="usd">13856000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27609228e1133-wk-Fact-7B7859BC595D3C0702151ECF8BDB8F55"
      unitRef="usd">11964000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27609228e1152-wk-Fact-493803D7298C1D0DD2AD1ECF8BCDA154"
      unitRef="usd">11264000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-007A6CD7D1B7D11C90811ECF8C488DDD-0-wk-Fact-81E45A5523C27EE580B01ECF8BE58949">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;16.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Employee Benefits&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company sponsors a retirement plan under Section&#160;401(k) of the Internal Revenue Code (the "Retirement Plan"). All Company employees, with the exception of temporary, contract and international employees are eligible to participate in the Retirement Plan after satisfying age requirements prescribed by the Retirement Plan. Under the Retirement Plan, employees may make tax-deferred contributions, and the Company, at its sole discretion, and subject to the limits prescribed by the IRS, may make either a nonelective contribution on behalf of all eligible employees or a matching contribution on behalf of all plan participants.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company elected to make a matching contribution of approximately &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$2.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; for the plan years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively. The employer contribution represents a matching contribution at a rate of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;50%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of each employee&#x2019;s first &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;six percent&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; contribution. Accordingly, each employee participating is entitled up to a maximum of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;three percent&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of his or her eligible annual payroll.&lt;/span&gt;&lt;/div&gt;</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="FD2019Q4YTD"
      decimals="-5"
      id="d27606958e642-wk-Fact-BFF2FBA65272101FDA0D1ECF8BE5B991"
      unitRef="usd">2900000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="FD2018Q4YTD"
      decimals="-5"
      id="d27606958e646-wk-Fact-27CFE0340071DA5BC0C41ECF8BBCD0F1"
      unitRef="usd">2800000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanCostRecognized
      contextRef="FD2017Q4YTD"
      decimals="-5"
      id="d27606958e650-wk-Fact-266E67226E805E8B275E1ECF8BAB88DF"
      unitRef="usd">2400000</us-gaap:DefinedContributionPlanCostRecognized>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d27606958e667-wk-Fact-3CF700F949C78DAF6C9C1ECF8BAC9777"
      unitRef="number">0.50</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercentOfMatch>
    <us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d27606958e671-wk-Fact-EAC8C4C42657521A636F1ECF8BB21DF9"
      unitRef="number">0.06</us-gaap:DefinedContributionPlanEmployerMatchingContributionPercent>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="FD2019Q4YTD"
      decimals="INF"
      id="d27606958e675-wk-Fact-82BEB88AE474F35948E11ECF8BE5C4D0"
      unitRef="number">0.03</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-4318045B078598AEFB0D1ECF8C48B142-0-wk-Fact-BF2C438DEB02881B17F01ECF8BD2EECA">&lt;div style="line-height:120%;padding-left:0px;text-indent:0px;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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;17.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Income Taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income (loss) before provision for income taxes was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Domestic&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;84,225&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;113,078&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,382&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,608&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,456&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,984&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income before income taxes&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;98,833&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;108,622&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;76,366&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of income tax expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;&#160;&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Current&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Federal&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,366&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,627&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,555&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;State&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,004&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,676&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,691&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,941&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,732&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,355&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total current income tax provision&lt;/span&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;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,311&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,035&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26,601&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Federal&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(9,345&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,475&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,664&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;State&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,783&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,149&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,470&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(650&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(7,781&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,393&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred income tax provision&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(11,778&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(11,405&lt;/span&gt;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,199&lt;/span&gt;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total income tax provision&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,533&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,630&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,402&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code. Effective for the Company's 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$11.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; in the fourth quarter of 2017 which included a provisional amount of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$8.9 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.0 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and determined no material adjustments to the provisional amounts recorded were required.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The reconciliation of statutory federal income tax to actual tax expense is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:center;text-indent:0px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Statutory federal income tax&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,755&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;22,812&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26,728&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;State taxes (net of federal benefit)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,312&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,089&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Federal and state credits&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(8,152&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,638&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,486&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Domestic production activities deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,528&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Excess tax benefits relating to stock-based compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(6,468&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(6,529&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(11,709&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tax Cuts and Jobs Act of 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,127&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,861&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign-derived intangible income deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,180&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,678&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;EMEA business restructuring&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,292&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Executive compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,081&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;745&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,354&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tax impact of foreign earnings&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,986&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,336&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(636&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Change in valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,678&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;800&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;834&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,503&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;929&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,533&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,630&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,402&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of net deferred tax assets were as follows (in thousands):&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:75%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax assets&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue reserves&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,355&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,420&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accruals and other liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,225&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,844&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,117&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tax credits and net operating loss carryforwards&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,814&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Stock-based compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,975&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,068&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,087&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gross deferred tax assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;62,560&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;42,107&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,826&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,148&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred tax assets&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;58,734&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;40,959&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax liabilities&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,838&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,317&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,249&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;768&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;668&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred tax liabilities&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,855&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,985&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net deferred tax assets&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;40,879&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,974&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; The Company intends to continue to invest all of its unremitted foreign earnings, as well as the capital in its foreign subsidiaries, indefinitely outside of the U.S. At December 28, 2019, the Company has unremitted foreign earnings and any unrecognized deferred tax liability on these unremitted earnings would be immaterial.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company has federal net operating loss carryforwards of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; as of December 28, 2019. The Company had foreign net operating loss carryforwards of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; as of December 29, 2018 that were fully utilized during tax year ended December 28, 2019. The Company has state research and development credit carryforwards of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$13.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$10.7 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; as of December 28, 2019 and December 29, 2018, respectively, which expire from 2028 to 2034. Under the Internal Revenue Code and state law, certain substantial changes in the Company&#x2019;s ownership could result in an annual limitation on the amount of these tax carryforwards which can be utilized in future years. As of December 28, 2019, December 29, 2018 and December 30, 2017, the Company had a valuation allowance of &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$3.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$1.1 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$0.8 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, respectively, for state research &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;and development credit carryforwards and certain foreign deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;A summary of the Company&#x2019;s adjustments to its gross unrecognized tax benefits in the current year is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:center;text-indent:0px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,119&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,590&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,146&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Increase for tax positions related to the current year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;770&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,891&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;580&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Increase for tax positions related to acquisition&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,493&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Increase (decrease) for tax positions related to prior years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(768&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;407&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(523&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Decrease for settlements with applicable taxing authorities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,262&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Decrease for lapses of statute of limitations&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(613&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,121&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,119&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,590&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;During the fourth quarter of 2018, the Company finalized the purchase accounting related to its acquisition of Robopolis and recorded a $1.5 million adjustment for uncertain pre-acquisition income tax positions in various taxing jurisdictions against goodwill. In addition, the Company recorded a charge of $2.3 million for estimated taxes associated with a restructuring of the EMEA business during fiscal 2018. The Company accrues interest and, if applicable, penalties for any uncertain tax positions as a component of income tax expense.  As of December 28, 2019, December&#160;29, 2018 and December&#160;30, 2017 there were no material accrued interest or penalties.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company is subject to taxation in the United States (federal and state) and foreign jurisdictions.  The statute of limitations for examinations by the Internal Revenue Service (the "IRS") and state tax authorities is closed for fiscal years prior to 2014.  Federal and state carryforward attributes that were generated prior to fiscal 2014 may still be adjusted upon examination by the federal or state tax authorities if they either have been or will be used in a period for which the statute of limitations is still open.  The Company is currently under examination by the IRS for the years 2014 and 2015. There are other ongoing audits in various other jurisdictions that are not material to the Company's financial statements.&#160; The Company regularly assesses the likelihood of adverse outcomes resulting from these examinations to determine the adequacy of its provision for income taxes. The Company continues to monitor the progress of ongoing discussions with tax authorities and the effect, if any, of the expected expiration of the statute of limitations in various taxing jurisdictions.&#160; The Company believes that an adequate provision has been made for any adjustments that may result from tax examinations. However, the outcome of tax audits cannot be predicted with certainty. If any issues addressed in the Company's tax audits are resolved in a manner not consistent with management's expectations, the Company could be required to adjust its provision for income taxes in the period such resolution occurs. Although the timing of resolution, settlement, and closure of audits is not certain, it is reasonably possible that certain U.S. federal and non-U.S. tax audits may be concluded within the next 12 months, which could increase or decrease the balance of the Company's gross unrecognized tax benefits. The Company does not expect a significant change in the amount of unrecognized tax benefits within the next 12 months. If all of the Company's unrecognized tax benefits as of December&#160;28, 2019 were to become recognizable in the future, it would record a &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;$7.4 million&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; benefit, inclusive of interest, to the income tax provision.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-2FF8616CE0E02CFF23E31ECF8C484753-0-wk-Fact-7C521865D64299C588321ECF8BC463E6">&lt;div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income (loss) before provision for income taxes was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Domestic&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;84,225&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;113,078&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;71,382&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,608&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,456&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,984&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Income before income taxes&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;98,833&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;108,622&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;76,366&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e795-wk-Fact-64A29CDA42758BC07EE61ECF8BD45F85"
      unitRef="usd">84225000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e814-wk-Fact-E81D2B75569371E2BF8B1ECF8BD8E52D"
      unitRef="usd">113078000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e833-wk-Fact-75375ED91E7488C6C9F81ECF8BD2DC14"
      unitRef="usd">71382000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e849-wk-Fact-E07637FA355AB9DA59951ECF8BD3385D"
      unitRef="usd">14608000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e868-wk-Fact-597CB0F04298E7C9CF661ECF8BBFACE3"
      unitRef="usd">-4456000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e888-wk-Fact-CC84A81C9BDAE3F4B1A71ECF8BB568F6"
      unitRef="usd">4984000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e914-wk-Fact-03FB067FCA73C1F5C5921ECF8C2024AD"
      unitRef="usd">98833000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e933-wk-Fact-1F63C4B83778EE7F839D1ECF8BCA93D9"
      unitRef="usd">108622000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e952-wk-Fact-C0FFAF418D6578BE77651ECF8C1B319E"
      unitRef="usd">76366000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-DDA0930E52B443F31A7A1ECF8C483BC5-0-wk-Fact-B41691C6BD91CCEB813C1ECF8BC53E25">&lt;div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of income tax expense were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;"&gt;&#160;&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Current&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Federal&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,366&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,627&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,555&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;State&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,004&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,676&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,691&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,941&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,732&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,355&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total current income tax provision&lt;/span&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;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,311&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,035&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26,601&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Federal&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(9,345&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,475&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;6,664&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;State&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,783&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,149&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,470&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(650&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(7,781&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,393&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred income tax provision&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(11,778&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(11,405&lt;/span&gt;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,199&lt;/span&gt;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total income tax provision&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,533&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,630&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,402&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1196-wk-Fact-A9A967F21249D14B34EB1ECF8BCD65BF"
      unitRef="usd">13366000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1215-wk-Fact-916C0FC8A88F193BA8291ECF8BC20410"
      unitRef="usd">17627000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentFederalTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1234-wk-Fact-81342AA84DEAF1CEEDF11ECF8BCEDBBA"
      unitRef="usd">17555000</us-gaap:CurrentFederalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1250-wk-Fact-B000DEB7CC0C7E5F6B4B1ECF8BD095FD"
      unitRef="usd">5004000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1269-wk-Fact-08F81C4BA8B02A62C3561ECF8BC62693"
      unitRef="usd">3676000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentStateAndLocalTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1288-wk-Fact-005227C7ABDF2E9761421ECF8BCC9234"
      unitRef="usd">1691000</us-gaap:CurrentStateAndLocalTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1309-wk-Fact-7A0DE80CC93D734C1BFE1ECF8BCA54DD"
      unitRef="usd">6941000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1328-wk-Fact-C7C4DAD2EACF34869F161ECF8BC37A20"
      unitRef="usd">10732000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentForeignTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1347-wk-Fact-93B7A9974D45C2D326DE1ECF8BAE2DF0"
      unitRef="usd">7355000</us-gaap:CurrentForeignTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1373-wk-Fact-42B82AD28966A148968D1ECF8BCBF78D"
      unitRef="usd">25311000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1392-wk-Fact-2068C549F0E040D07F691ECF8BD1A514"
      unitRef="usd">32035000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1411-wk-Fact-DA6962D60D5ED41FB3871ECF8BD25F56"
      unitRef="usd">26601000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1494-wk-Fact-8025EF8464BE7A28C3B41ECF8BC44960"
      unitRef="usd">-9345000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1514-wk-Fact-A7882273E3A290DE03371ECF8B9453BE"
      unitRef="usd">-2475000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredFederalIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1534-wk-Fact-62F19105E2C50BDA3FE21ECF8BC8B72E"
      unitRef="usd">6664000</us-gaap:DeferredFederalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1550-wk-Fact-2577AC7272E8C723BE091ECF8BAEB8DB"
      unitRef="usd">-1783000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1570-wk-Fact-4BFBE4ED62833E89E6D61ECF8BD50513"
      unitRef="usd">-1149000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1590-wk-Fact-FE4D1EC747238EAA697E1ECF8BC932C0"
      unitRef="usd">-2470000</us-gaap:DeferredStateAndLocalIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1612-wk-Fact-8B882D24DB21D4F7A8231ECF8BC83CAB"
      unitRef="usd">-650000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1632-wk-Fact-1E3CA7EF65AC77D7A5C91ECF8BAD1B06"
      unitRef="usd">-7781000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredForeignIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1652-wk-Fact-5EE815580290C8D1D0491ECF8BBF8F0F"
      unitRef="usd">-5393000</us-gaap:DeferredForeignIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1675-wk-Fact-9AB50BC21005C1050E531ECF8BC43CB7"
      unitRef="usd">-11778000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1695-wk-Fact-7128C4DEF2402505AAE31ECF8BCDA54C"
      unitRef="usd">-11405000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1715-wk-Fact-68A7CADF224422F0C8431ECF8BC27E0C"
      unitRef="usd">-1199000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1742-wk-Fact-80B82630C160508D82E51ECF8C24901F"
      unitRef="usd">13533000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1761-wk-Fact-A7276CBBF0428CED119F1ECF8C229C9C"
      unitRef="usd">20630000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e1780-wk-Fact-BDD0129398F515CA82BC1ECF8C10B80C"
      unitRef="usd">25402000</us-gaap:IncomeTaxExpenseBenefit>
    <irbt:TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit
      contextRef="FD2017Q4QTD"
      decimals="-5"
      id="d27614797e1801-wk-Fact-D8BD0CA8462D2E9ACCBF1ECF8BCDC54B"
      unitRef="usd">11900000</irbt:TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit>
    <us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit
      contextRef="FD2017Q4QTD"
      decimals="-5"
      id="d27614797e1805-wk-Fact-3E1DCB798E6037D3B0FB1ECF8BCF155C"
      unitRef="usd">8900000</us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit>
    <irbt:TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit
      contextRef="FD2017Q4QTD"
      decimals="-5"
      id="d27614797e1809-wk-Fact-96DF8E429984DE25939C1ECF8BCF8BF7"
      unitRef="usd">3000000.0</irbt:TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B71EBD71019E02B0B8901ECF8C48EF87-0-wk-Fact-1771088A211D6596FE1A1ECF8BD03F10">&lt;div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The reconciliation of statutory federal income tax to actual tax expense is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:center;text-indent:0px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Statutory federal income tax&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,755&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;22,812&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;26,728&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;State taxes (net of federal benefit)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,999&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,312&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,089&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Federal and state credits&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(8,152&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(5,638&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,486&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Domestic production activities deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,528&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Excess tax benefits relating to stock-based compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(6,468&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(6,529&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(11,709&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tax Cuts and Jobs Act of 2017&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,127&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;11,861&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Foreign-derived intangible income deduction&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(4,180&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,678&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;EMEA business restructuring&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,292&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Executive compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,081&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;745&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,354&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tax impact of foreign earnings&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,986&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,336&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(636&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Change in valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,678&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;800&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;834&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,503&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;929&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,533&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,630&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,402&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e1977-wk-Fact-7ACB55912C518C74C0BF1ECF8BED0267"
      unitRef="usd">20755000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e1996-wk-Fact-D5FB51E40BEA41C012931ECF8C240925"
      unitRef="usd">22812000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2015-wk-Fact-CDD5C03B6056A8AC364E1ECF8BC21C61"
      unitRef="usd">26728000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2031-wk-Fact-FCEB3595E33857A0CC761ECF8C17B8BF"
      unitRef="usd">3999000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2050-wk-Fact-01510337AEE2D9E645DB1ECF8BEEB821"
      unitRef="usd">4312000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2069-wk-Fact-2F0D805F1A7F90D3CF9B1ECF8BE741A8"
      unitRef="usd">2089000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2090-wk-Fact-7049D4D5E95BD998EE3A1ECF8BEFF64C"
      unitRef="usd">8152000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2110-wk-Fact-08B48B2C1DAAB882701A1ECF8BF448AF"
      unitRef="usd">5638000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationTaxCredits
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2130-wk-Fact-A7A17D6FB506F6584B1C1ECF8BEEA10E"
      unitRef="usd">4486000</us-gaap:IncomeTaxReconciliationTaxCredits>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2152-wk-Fact-77F77D5669A7AEE8EAC81ECF8BEFA54B"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2171-wk-Fact-3FE04AC18461F49003841ECF8BF1E9D2"
      unitRef="usd">0</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2190-wk-Fact-D2824D46DCBC077BF1251ECF8BEA3E9D"
      unitRef="usd">1528000</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2212-wk-Fact-6D3AAC495016C83C66771ECF8BF6E997"
      unitRef="usd">6468000</irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount>
    <irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2232-wk-Fact-7F810A25AD556BE70DFA1ECF8BEF9DF9"
      unitRef="usd">6529000</irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount>
    <irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2252-wk-Fact-EB858724EF64AD4964EB1ECF8BF7BA40"
      unitRef="usd">11709000</irbt:EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2274-wk-Fact-7C4F4D7286EC76617F601ECF8C13B0B7"
      unitRef="usd">0</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2293-wk-Fact-DB98350665C9C88FCF191ECF8C19FAF6"
      unitRef="usd">2127000</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2312-wk-Fact-7634F4D3595A0AD4DF531ECF8BC7F74B"
      unitRef="usd">11861000</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount>
    <irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2333-wk-Fact-E997C9002753816F30C31ECF8BC685B0"
      unitRef="usd">-4180000</irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction>
    <irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2353-wk-Fact-143F820FD15E4A74C13F1ECF8BEAF482"
      unitRef="usd">-2678000</irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction>
    <irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2373-wk-Fact-AA152CCFB987ECCFD0B81ECF8C1DFD75"
      unitRef="usd">0</irbt:EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction>
    <irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2394-wk-Fact-C7F48DAA70EB9504E6881ECF8BE855F2"
      unitRef="usd">0</irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring>
    <irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2413-wk-Fact-D1C29F260C3A29400B481ECF8C17003D"
      unitRef="usd">2292000</irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring>
    <irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2432-wk-Fact-CE73BBAA676608680D6E1ECF8C213049"
      unitRef="usd">0</irbt:EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring>
    <irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2453-wk-Fact-7544B05DBD56650233322F91B989F334"
      unitRef="usd">2081000</irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation>
    <irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2472-wk-Fact-4F8085C907EA5A79F54D2F91EC9F903F"
      unitRef="usd">745000</irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation>
    <irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2491-wk-Fact-4C7580C6F2FCC13E373F2F920BCDCE61"
      unitRef="usd">1354000</irbt:EffectiveIncomeTaxRateReconciliationExecutiveCompensation>
    <irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2513-wk-Fact-3804E3F507C115ECBE6F2F92F1C59E46"
      unitRef="usd">1986000</irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings>
    <irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2532-wk-Fact-601C79E9D8BA84A959572F93A914F323"
      unitRef="usd">1336000</irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings>
    <irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2551-wk-Fact-1075150540DF0B2C24682F93C8C9A11A"
      unitRef="usd">-636000</irbt:EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2573-wk-Fact-0BD56AFEB2619B4F0F0D1ECF8BC42A9E"
      unitRef="usd">2678000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2592-wk-Fact-71B7917DE542EA3548891ECF8BCE9894"
      unitRef="usd">348000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2611-wk-Fact-F1EF5BEC6280738118C31ECF8BBF743C"
      unitRef="usd">800000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2632-wk-Fact-D24B7100F78062F780FF1ECF8BF4F37F"
      unitRef="usd">834000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2651-wk-Fact-6D6767E57035EC231B7A1ECF8C0FB177"
      unitRef="usd">1503000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2670-wk-Fact-BD22B1484DCEBF3FCBC71ECF8BF96BC0"
      unitRef="usd">929000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e2696-wk-Fact-2B8942D01EF0D517F9501ECF8C1AA391"
      unitRef="usd">13533000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e2715-wk-Fact-956BC9E02711CB3039A21ECF8BE85416"
      unitRef="usd">20630000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:IncomeTaxReconciliationNondeductibleExpense
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e2734-wk-Fact-DB4D2F906713D45507781ECF8BE785B7"
      unitRef="usd">25402000</us-gaap:IncomeTaxReconciliationNondeductibleExpense>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-D930F00F5ED16F05693F1ECF8C488C14-0-wk-Fact-48245D8C5B1D46990ED91ECF8BCFB019">&lt;div style="line-height:120%;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The components of net deferred tax assets were as follows (in thousands):&lt;/span&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"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:75%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax assets&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue reserves&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21,355&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,420&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Accruals and other liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,225&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,844&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease liabilities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;14,117&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Tax credits and net operating loss carryforwards&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;8,814&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,781&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Stock-based compensation&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,981&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,975&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,068&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,087&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gross deferred tax assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;62,560&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;42,107&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Valuation allowance&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(3,826&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(1,148&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred tax assets&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;58,734&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;40,959&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Deferred tax liabilities&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Intangible assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;3,838&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,317&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Operating lease right-of-use assets&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13,249&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Other&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;768&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;668&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total deferred tax liabilities&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17,855&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;border-top:1px solid #000000;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,985&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net deferred tax assets&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;40,879&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;32,974&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:3px double #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e2870-wk-Fact-A0823F3834D491D2ABDB1ECF8BC8F88A"
      unitRef="usd">21355000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e2889-wk-Fact-6EF974F20906043EAECF1ECF8BAF9D99"
      unitRef="usd">17420000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e2904-wk-Fact-7C1A13500C40758E11EB15DD88D36230"
      unitRef="usd">8225000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e2923-wk-Fact-359F12663FB730EC048715DDAAE4B5FD"
      unitRef="usd">7844000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther>
    <irbt:DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e2943-wk-Fact-ABC682F952AF1736DCC315DB5896F41C"
      unitRef="usd">14117000</irbt:DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities>
    <irbt:DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e2962-wk-Fact-07306986B4A4A16E57C415DB852CAE76"
      unitRef="usd">0</irbt:DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e2982-wk-Fact-AAB0AF96B87F36AF16691ECF8BC86F2D"
      unitRef="usd">8814000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxCreditCarryforwards
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3001-wk-Fact-253A4A136DDA8CFB94691ECF8BC861A4"
      unitRef="usd">7781000</us-gaap:DeferredTaxAssetsTaxCreditCarryforwards>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3021-wk-Fact-93890AB761CD4261EC101ECF8BB7161C"
      unitRef="usd">4981000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3040-wk-Fact-F9DD6E154B1F6B680EAE1ECF8BB63210"
      unitRef="usd">4975000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3060-wk-Fact-C94106FE55EE6F637CA815DE06F1F230"
      unitRef="usd">5068000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsOther
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3079-wk-Fact-25BF2AD61B5A6174447B15DE1E513D18"
      unitRef="usd">4087000</us-gaap:DeferredTaxAssetsOther>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3099-wk-Fact-0727201B933D7000F7B21ECF8BC02378"
      unitRef="usd">62560000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsGross
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3118-wk-Fact-0F33C2B98D4F478BD3071ECF8BB9C9A7"
      unitRef="usd">42107000</us-gaap:DeferredTaxAssetsGross>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3138-wk-Fact-663448AC6EEF6076C5581ECF8BA444D4"
      unitRef="usd">3826000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3158-wk-Fact-A0272EC4D66D0520E99C1ECF8BC187B6"
      unitRef="usd">1148000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3179-wk-Fact-F54E4B97EA85EDA163201ECF8BC2D3B5"
      unitRef="usd">58734000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxAssetsNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3198-wk-Fact-310DA61B6D95CBFC736F1ECF8BB9B156"
      unitRef="usd">40959000</us-gaap:DeferredTaxAssetsNet>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3260-wk-Fact-49951890A72D185936061ECF8BB4CFBC"
      unitRef="usd">3838000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3279-wk-Fact-C6F0EAB5918204801F8F1ECF8BB60E2A"
      unitRef="usd">7317000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesLeasingArrangements
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3299-wk-Fact-CC009C342C26AEED78A415DC79E4B9E9"
      unitRef="usd">13249000</us-gaap:DeferredTaxLiabilitiesLeasingArrangements>
    <us-gaap:DeferredTaxLiabilitiesLeasingArrangements
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3318-wk-Fact-7D28004DF41602CBE3E415DCB17BC711"
      unitRef="usd">0</us-gaap:DeferredTaxLiabilitiesLeasingArrangements>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3338-wk-Fact-210E1295335B5B42C2991ECF8BC30BFB"
      unitRef="usd">768000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredTaxLiabilitiesOther
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3357-wk-Fact-37826A24C8E6C4C2D75D1ECF8BC52E54"
      unitRef="usd">668000</us-gaap:DeferredTaxLiabilitiesOther>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3377-wk-Fact-DBCEC5E450E0F0C20D501ECF8BCBFC23"
      unitRef="usd">17855000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredIncomeTaxLiabilities
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3396-wk-Fact-1A74063B5A13BFB6F29A1ECF8BB46D4F"
      unitRef="usd">7985000</us-gaap:DeferredIncomeTaxLiabilities>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e3421-wk-Fact-A1515ABE8F7BD204CC501ECF8BBAC807"
      unitRef="usd">40879000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:DeferredTaxAssetsLiabilitiesNet
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3440-wk-Fact-AF7B90136B19FBCB428F1ECF8BBBE3DF"
      unitRef="usd">32974000</us-gaap:DeferredTaxAssetsLiabilitiesNet>
    <us-gaap:OperatingLossCarryforwards
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27614797e3461-wk-Fact-7D10A4724F6B73F9D4693AF18AF8A7E6"
      unitRef="usd">1800000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:OperatingLossCarryforwards
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27614797e3465-wk-Fact-59A5871D93A6911C915F1ECF8BD42F58"
      unitRef="usd">3400000</us-gaap:OperatingLossCarryforwards>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="FI2019Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember"
      decimals="-5"
      id="d27614797e3469-wk-Fact-27531F07AC0EEC4F7CBC1ECF8BD7B58B"
      unitRef="usd">13100000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:TaxCreditCarryforwardAmount
      contextRef="FI2018Q4_us-gaap_IncomeTaxAuthorityAxis_us-gaap_StateAndLocalJurisdictionMember"
      decimals="-5"
      id="d27614797e3473-wk-Fact-98C7E36C3FC24D1D9FEB1ECF8BCC73F8"
      unitRef="usd">10700000</us-gaap:TaxCreditCarryforwardAmount>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27614797e3477-wk-Fact-6E9281150BF1BFDAA0841ECF8B95D50C"
      unitRef="usd">3800000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2018Q4"
      decimals="-5"
      id="d27614797e3482-wk-Fact-21156A7A99DFAA8E9A881ECF8B91B85E"
      unitRef="usd">1100000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="FI2017Q4"
      decimals="-5"
      id="d27614797e3486-wk-Fact-1D479B52ED490C19B1AE1ECF8B9287BB"
      unitRef="usd">800000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-B762F42A65AFD520126A1ECF8C48BBB8-0-wk-Fact-45516FE3A07EE9B5BFBC1ECF8BD04A0B">&lt;div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;A summary of the Company&#x2019;s adjustments to its gross unrecognized tax benefits in the current year is as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:10px;text-align:center;text-indent:0px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:62%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:10%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Year Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;30, &lt;br/&gt;2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at beginning of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,119&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,590&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;5,146&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Increase for tax positions related to the current year&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;770&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;2,891&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;580&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Increase for tax positions related to acquisition&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,493&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Increase (decrease) for tax positions related to prior years&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(768&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;407&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(523&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Decrease for settlements with applicable taxing authorities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(2,262&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Decrease for lapses of statute of limitations&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;&#x2014;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;(613&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;)&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Balance at end of period&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,121&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,119&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;4,590&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e3656-wk-Fact-7E9961EA199855A670691ECF8BF44C14"
      unitRef="usd">7119000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27614797e3675-wk-Fact-B822AC47C6B129AFAE061ECF8BF97278"
      unitRef="usd">4590000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="FI2016Q4"
      decimals="-3"
      id="d27614797e3694-wk-Fact-5F5D1759130572DF51FD1ECF8BF728A9"
      unitRef="usd">5146000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e3710-wk-Fact-B9A81DE31BCBA349AF231ECF8C180ADA"
      unitRef="usd">770000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e3729-wk-Fact-3069C37D2E83879A5C241ECF8BF5B9D4"
      unitRef="usd">2891000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e3748-wk-Fact-779287A3DF88595CE5CB1ECF8C2462F9"
      unitRef="usd">580000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e3769-wk-Fact-28DDE8750EACD44E18D01ECF8C265076"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e3788-wk-Fact-EF457ECB6F2E611E9BF31ECF8C1C81C4"
      unitRef="usd">1493000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e3807-wk-Fact-CFB2E61B5782430290C91ECF8C1F5EFF"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e3828-wk-Fact-62F7C74ABF06BD076A501ECF8BF404E9"
      unitRef="usd">768000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e3848-wk-Fact-ADD78ACA06320923288E1ECF8C20DAE3"
      unitRef="usd">407000</us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e3867-wk-Fact-D924E0D787128B93AE1E1ECF8BF3BEB2"
      unitRef="usd">523000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e3889-wk-Fact-7DFBD9867D71CACB5EE21ECF8C236C7D"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e3908-wk-Fact-6F9C399B3D1891D3A3281ECF8C202ACB"
      unitRef="usd">2262000</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e3928-wk-Fact-6E6195119539E7812CBD1ECF8C29B213"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27614797e3949-wk-Fact-C6F376ED500CEEC952681ECF8BF53F06"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27614797e3968-wk-Fact-78AA1076EFE9A65B81281ECF8C1A6DE0"
      unitRef="usd">0</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27614797e3987-wk-Fact-0F64F964EA7719A3B5041ECF8C0ED290"
      unitRef="usd">613000</us-gaap:UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="FI2019Q4"
      decimals="-3"
      id="d27614797e4014-wk-Fact-B3D43BDE4BD985492D571ECF8BF44CFD"
      unitRef="usd">7121000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="FI2018Q4"
      decimals="-3"
      id="d27614797e4033-wk-Fact-7E9961EA199855A670691ECF8BF44C14"
      unitRef="usd">7119000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefits
      contextRef="FI2017Q4"
      decimals="-3"
      id="d27614797e4052-wk-Fact-B822AC47C6B129AFAE061ECF8BF97278"
      unitRef="usd">4590000</us-gaap:UnrecognizedTaxBenefits>
    <us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate
      contextRef="FI2019Q4"
      decimals="-5"
      id="d27614797e4069-wk-Fact-BE6479B75A52C386EE4E1ECF8BD28173"
      unitRef="usd">7400000</us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-2A2A10FEDD446B8D57CB1ECF8C48452E-0-wk-Fact-5AD86A518AA1A75DA0BC1ECF8BD758A9">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;18.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Industry Segment, Geographic Information and Significant Customers&lt;/span&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:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The Company operates as&#160;one&#160;operating segment. The Company's consumer robots products are offered to consumers through distributor and retail sales channels, as well as its on-line stores.&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Geographic Information&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, sales to non-U.S.&#160;customers accounted for &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;50.3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;48.7%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;48.8%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; of total revenue, respectively. &lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table provides information about revenue by geographical region (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:41%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 30, 2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Domestic&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;603,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;560,995&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;452,563&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;International&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;610,392&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;531,589&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;431,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,214,010&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,092,584&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;883,911&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-style:italic;"&gt;Significant Customers&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;For the fiscal years ended &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;28, 2019&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;29, 2018&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;December&#160;30, 2017&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, the Company generated &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;21.3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;, &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;17.3%&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt; and &lt;/span&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;13.5%&lt;/span&gt;&lt;/span&gt;, respectively, of total revenue from one of its retailers (Amazon), respectively.</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember"
      decimals="3"
      id="d27610884e670-wk-Fact-2F223AC55AE379BDD5831ECF8BC74407"
      unitRef="number">0.503</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember"
      decimals="3"
      id="d27610884e674-wk-Fact-5ECC70D1F86436601BA11ECF8BB8B9B9"
      unitRef="number">0.487</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember"
      decimals="3"
      id="d27610884e679-wk-Fact-DF7FB6871816F990AD691ECF8BCEDF7D"
      unitRef="number">0.488</us-gaap:ConcentrationRiskPercentage1>
    <irbt:ScheduleofrevenuebygeographyTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-21BE7C40DE263A7408A330CBE48060CD-0-wk-Fact-D3CCA80E5BA4BCBDFB6230CF9E3FAD34">&lt;div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following table provides information about revenue by geographical region (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="line-height:120%;padding-top:6px;text-align:center;text-indent:0px;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="12"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:41%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:17%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 28, 2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 29, 2018&lt;/span&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;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:9pt;"&gt;&lt;span style="font-family:inherit;font-size:9pt;font-weight:bold;"&gt;December 30, 2017&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Domestic&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;603,618&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;560,995&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;452,563&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;International&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;610,392&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;531,589&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;431,348&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;border-bottom:1px solid #000000;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Total&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,214,010&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1,092,584&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&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;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;883,911&lt;/span&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</irbt:ScheduleofrevenuebygeographyTableTextBlock>
    <us-gaap:Revenues
      contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember"
      decimals="-3"
      id="d27610884e783-wk-Fact-593E1A7611D96CECD52230D0411517E6"
      unitRef="usd">603618000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember"
      decimals="-3"
      id="d27610884e802-wk-Fact-DBC380F10E10A0C6871030F6AF57A77E"
      unitRef="usd">560995000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_DomesticDestinationMember"
      decimals="-3"
      id="d27610884e821-wk-Fact-E56016A9930FCDC0579330F6D203A593"
      unitRef="usd">452563000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember"
      decimals="-3"
      id="d27610884e837-wk-Fact-74510CEBA61E15E23DAF30F76CE9020B"
      unitRef="usd">610392000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember"
      decimals="-3"
      id="d27610884e856-wk-Fact-75AD1D224BBBAE13325630FA903133A7"
      unitRef="usd">531589000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2017Q4YTD_srt_StatementGeographicalAxis_us-gaap_GeographicDistributionForeignMember"
      decimals="-3"
      id="d27610884e875-wk-Fact-9E06E589D672A0C48EC030FAB83814BA"
      unitRef="usd">431348000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2019Q4YTD"
      decimals="-3"
      id="d27610884e901-wk-Fact-D8DFB2BEB66F79739C951ECF8C2C7C49"
      unitRef="usd">1214010000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q4YTD"
      decimals="-3"
      id="d27610884e920-wk-Fact-989EE34444750D4496461ECF8BCC77EC"
      unitRef="usd">1092584000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2017Q4YTD"
      decimals="-3"
      id="d27610884e939-wk-Fact-04C530ADA4DB9ABBE46B1ECF8C290722"
      unitRef="usd">883911000</us-gaap:Revenues>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2019Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27610884e966-wk-Fact-ED14B6DDEE939662FF511ECF8BA09D9E"
      unitRef="number">0.213</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2018Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27610884e970-wk-Fact-32DB3A8BE91F98C342C21ECF8BFF3D7A"
      unitRef="number">0.173</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="FD2017Q4YTD_srt_MajorCustomersAxis_irbt_AmazonMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember"
      decimals="3"
      id="d27610884e975-wk-Fact-479A5FCB40C7377A4B3820EDC5D6089C"
      unitRef="number">0.135</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:QuarterlyFinancialInformationTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-C258EAB9A2B410633DE31ECF8C48B13F-0-wk-Fact-9DCF9D561DF52013D0D01ECF8BD9DFE6">&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="2"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:6%;"/&gt;&lt;td style="width:94%;"/&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;19.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;font-weight:bold;"&gt;Quarterly Information (Unaudited)&lt;/span&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:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following information has been derived from unaudited consolidated financial statements that, in the opinion of management, include all recurring adjustments necessary for a fair statement of such information (in thousands, except per share amounts):&lt;/span&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="32"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="31" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Quarter Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;September&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;June&#160;29, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;March&#160;30, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;September&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;June&#160;30, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;March&#160;31, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;426,778&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;289,399&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;260,172&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;237,661&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;384,665&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;264,534&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;226,317&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;217,068&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gross profit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;169,370&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;136,841&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;118,170&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;119,546&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;186,511&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;135,206&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;117,926&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;115,785&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,041&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35,532&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,207&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;22,520&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,191&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,929&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,471&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,401&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.70&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.24&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.25&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.78&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.88&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.12&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.37&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.71&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock
      contextRef="FD2019Q4YTD"
      id="TextSelection-EFF1965F407EF1133ABE1ECF8C4848E5-0-wk-Fact-A47F03AF1FA0202BB7791ECF8BDAF29E">&lt;div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;The following information has been derived from unaudited consolidated financial statements that, in the opinion of management, include all recurring adjustments necessary for a fair statement of such information (in thousands, except per share amounts):&lt;/span&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="32"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="width:11%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:9%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:7%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:1%;"/&gt;&lt;td style="width:8%;"/&gt;&lt;td style="width:1%;"/&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="31" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;Fiscal Quarter Ended&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;September&#160;28, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;June&#160;29, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;March&#160;30, &lt;br/&gt;2019&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;December&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;September&#160;29, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;June&#160;30, &lt;br/&gt;2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:center;font-size:8pt;"&gt;&lt;span style="font-family:inherit;font-size:8pt;font-weight:bold;"&gt;March&#160;31, &lt;br/&gt;2018&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Revenue&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;426,778&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;289,399&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;260,172&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;237,661&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;384,665&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;264,534&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;226,317&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;217,068&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Gross profit&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;169,370&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;136,841&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;118,170&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;119,546&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;186,511&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;135,206&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;117,926&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;115,785&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Net income&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,041&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;35,532&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;7,207&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;22,520&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;25,191&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;31,929&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;10,471&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;20,401&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;background-color:#cceeff;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&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;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;Diluted earnings per share&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.70&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.24&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.25&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.78&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.88&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;1.12&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.37&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"&gt;&lt;div style="overflow:hidden;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"&gt;&lt;div style="text-align:right;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;span&gt;0.71&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;div style="text-align:left;font-size:10pt;"&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;span style="font-family:inherit;font-size:10pt;"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:Revenues
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d27615977e1023-wk-Fact-33939C15F988469E998A1ECF8BD36AC4"
      unitRef="usd">426778000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d27615977e1042-wk-Fact-CE36392EB5507CFA8A491ECF8C1E9CE2"
      unitRef="usd">289399000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d27615977e1061-wk-Fact-AEDF1775840BCEB94DB31ECF8BEE0B30"
      unitRef="usd">260172000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d27615977e1081-wk-Fact-EAFE20467863A3675D6D1ECF8BCB6FC1"
      unitRef="usd">237661000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d27615977e1100-wk-Fact-0FF94AFCDBBE7652F99B1ECF8BD7C652"
      unitRef="usd">384665000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d27615977e1120-wk-Fact-47BE5DC4ED4033777C041ECF8BE4408A"
      unitRef="usd">264534000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d27615977e1139-wk-Fact-77FEA789554AA511BED21ECF8BC99AB0"
      unitRef="usd">226317000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d27615977e1158-wk-Fact-9FB1F19C3E2B29089E301ECF8BD5774E"
      unitRef="usd">217068000</us-gaap:Revenues>
    <us-gaap:GrossProfit
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d27615977e1173-wk-Fact-68A2D6F3659849D897AB1ECF8C1F2169"
      unitRef="usd">169370000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d27615977e1192-wk-Fact-4C384144092DCF8240291ECF8BF6A520"
      unitRef="usd">136841000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d27615977e1211-wk-Fact-E1F9C915C2DB3A0559431ECF8BCDCEB3"
      unitRef="usd">118170000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d27615977e1231-wk-Fact-BA93030639C2581EDF381ECF8BF26F9C"
      unitRef="usd">119546000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d27615977e1250-wk-Fact-E19E98979AD2AE063C3B1ECF8C288ADB"
      unitRef="usd">186511000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d27615977e1269-wk-Fact-32A4F440133A9123AA061ECF8BDD0AB5"
      unitRef="usd">135206000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d27615977e1289-wk-Fact-6C7AEA9B75E8FDA2F5BC1ECF8BD5D12E"
      unitRef="usd">117926000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d27615977e1308-wk-Fact-2EEE5BF145E6B0914E011ECF8BD09822"
      unitRef="usd">115785000</us-gaap:GrossProfit>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q4QTD"
      decimals="-3"
      id="d27615977e1328-wk-Fact-DA1663B149DFA9F9744E1ECF8BE49CCC"
      unitRef="usd">20041000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q3QTD"
      decimals="-3"
      id="d27615977e1347-wk-Fact-FC819945EB24699411071ECF8BD1BCF7"
      unitRef="usd">35532000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q2QTD"
      decimals="-3"
      id="d27615977e1366-wk-Fact-864629AD0CB4B41C051C1ECF8BDAB912"
      unitRef="usd">7207000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2019Q1QTD"
      decimals="-3"
      id="d27615977e1386-wk-Fact-C9F0452602097046F20C1ECF8BCED98B"
      unitRef="usd">22520000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q4QTD"
      decimals="-3"
      id="d27615977e1405-wk-Fact-4BD4ED849F72227247651ECF8BC79C06"
      unitRef="usd">25191000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q3QTD"
      decimals="-3"
      id="d27615977e1424-wk-Fact-24758557CA1D9E4CEC6D1ECF8BD13005"
      unitRef="usd">31929000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q2QTD"
      decimals="-3"
      id="d27615977e1444-wk-Fact-C89C4E52A4C0FB4B63D41ECF8C28394B"
      unitRef="usd">10471000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="FD2018Q1QTD"
      decimals="-3"
      id="d27615977e1463-wk-Fact-128D818F215DA22AF4881ECF8BD98887"
      unitRef="usd">20401000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q4QTD"
      decimals="2"
      id="d27615977e1488-wk-Fact-39E432052824D5B1803C1ECF8BDF33E2"
      unitRef="usdPerShare">0.70</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q3QTD"
      decimals="2"
      id="d27615977e1507-wk-Fact-80403BDF25C41DA0CEB91ECF8BD9CF0E"
      unitRef="usdPerShare">1.24</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q2QTD"
      decimals="2"
      id="d27615977e1526-wk-Fact-CD7A546D2AF73FBF479C1ECF8BD47D12"
      unitRef="usdPerShare">0.25</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2019Q1QTD"
      decimals="2"
      id="d27615977e1546-wk-Fact-049782D0C6014507732C1ECF8BEF8A92"
      unitRef="usdPerShare">0.78</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q4QTD"
      decimals="2"
      id="d27615977e1565-wk-Fact-6BCFD85FC6611635B3CA1ECF8BE1FE69"
      unitRef="usdPerShare">0.88</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q3QTD"
      decimals="2"
      id="d27615977e1585-wk-Fact-CE771F6D4BEE0EF046741ECF8C2588DD"
      unitRef="usdPerShare">1.12</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q2QTD"
      decimals="2"
      id="d27615977e1604-wk-Fact-C962F42F660EE26BEDF81ECF8BC49E35"
      unitRef="usdPerShare">0.37</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="FD2018Q1QTD"
      decimals="2"
      id="d27615977e1623-wk-Fact-D5E0ECD9AF9A783C721A1ECF8BDF08CC"
      unitRef="usdPerShare">0.71</us-gaap:EarningsPerShareDiluted>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6668337616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Pro Forma (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Sep. 28, 2019</div></th>
<th class="th"><div>Jun. 29, 2019</div></th>
<th class="th"><div>Mar. 30, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Sep. 29, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [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>
<td class="text">&#160;<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_Revenues', window );">Revenue</a></td>
<td class="nump">$ 426,778<span></span>
</td>
<td class="nump">$ 289,399<span></span>
</td>
<td class="nump">$ 260,172<span></span>
</td>
<td class="nump">$ 237,661<span></span>
</td>
<td class="nump">$ 384,665<span></span>
</td>
<td class="nump">$ 264,534<span></span>
</td>
<td class="nump">$ 226,317<span></span>
</td>
<td class="nump">$ 217,068<span></span>
</td>
<td class="nump">$ 1,214,010<span></span>
</td>
<td class="nump">$ 1,092,584<span></span>
</td>
<td class="nump">$ 883,911<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaRevenue', window );">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>
<td class="text">&#160;<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">901,612<span></span>
</td>
</tr>
<tr class="ro">
<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">$ 20,041<span></span>
</td>
<td class="nump">$ 35,532<span></span>
</td>
<td class="nump">$ 7,207<span></span>
</td>
<td class="nump">$ 22,520<span></span>
</td>
<td class="nump">$ 25,191<span></span>
</td>
<td class="nump">$ 31,929<span></span>
</td>
<td class="nump">$ 10,471<span></span>
</td>
<td class="nump">$ 20,401<span></span>
</td>
<td class="nump">$ 85,300<span></span>
</td>
<td class="nump">$ 87,992<span></span>
</td>
<td class="nump">50,964<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss', window );">Net income</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="nump">$ 51,887<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic</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="nump">$ 3.04<span></span>
</td>
<td class="nump">$ 3.18<span></span>
</td>
<td class="nump">$ 1.85<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic', window );">Basic income per share (in dollars per share)</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="nump">1.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_EarningsPerShareDiluted', window );">Diluted</a></td>
<td class="nump">$ 0.70<span></span>
</td>
<td class="nump">$ 1.24<span></span>
</td>
<td class="nump">$ 0.25<span></span>
</td>
<td class="nump">$ 0.78<span></span>
</td>
<td class="nump">$ 0.88<span></span>
</td>
<td class="nump">$ 1.12<span></span>
</td>
<td class="nump">$ 0.37<span></span>
</td>
<td class="nump">$ 0.71<span></span>
</td>
<td class="nump">$ 2.97<span></span>
</td>
<td class="nump">$ 3.07<span></span>
</td>
<td class="nump">1.77<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted', window );">Diluted income per share (in dollars per share)</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="nump">$ 1.80<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_BusinessAcquisitionProFormaEarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_BusinessAcquisitionProFormaEarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted</td>
</tr>
<tr>
<td style="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_BusinessAcquisitionsProFormaNetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionsProFormaRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionsProFormaRevenue</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 per each share of common stock or unit 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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 7: http://www.xbrl.org/2003/role/disclosureRef<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=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-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_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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_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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-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>44
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838561744">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies - Narrative (Details) - USD ($)<br> $ in Thousands, shares in Millions</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 30, 2017</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_irbt_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Dec. 28,  2019<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_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount', window );">Equity Securities without Readily Determinable Fair Value, Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 21,000<span></span>
</td>
<td class="nump">$ 15,100<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_CashEquivalentsAtCarryingValue', window );">Cash equivalents</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">239,400<span></span>
</td>
<td class="nump">130,400<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_AdvertisingExpense', window );">Advertising Expense</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">125,000<span></span>
</td>
<td class="nump">114,000<span></span>
</td>
<td class="nump">$ 91,800<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_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">$ 800<span></span>
</td>
<td class="nump">$ 3,826<span></span>
</td>
<td class="nump">$ 1,148<span></span>
</td>
<td class="nump">$ 800<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_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit', window );">Tax Cuts and Jobs Act of 2017, income tax expense (benefit), transition tax fior accumulated foreign earnings</a></td>
<td class="nump">3,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="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_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit', window );">Tax Cuts and Jobs Act of 2017, income tax expense (benefit)</a></td>
<td class="nump">11,900<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_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit', window );">Tax Cuts and Jobs Act of 2017, income tax expense (benefit), remeasurement of certain deferred tax assets and liabilities</a></td>
<td class="nump">8,900<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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive securities excluded from computation of earnings per share (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.2<span></span>
</td>
<td class="nump">0.0<span></span>
</td>
<td class="nump">0.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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Accounts Receivable | Two Customers [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>
<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_irbt_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26.60%<span></span>
</td>
<td class="nump">23.10%<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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember', window );">Customer Concentration Risk | Revenue | Amazon [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>
<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_irbt_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ConcentrationRiskPercentage1', window );">Concentration risk percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">21.30%<span></span>
</td>
<td class="nump">17.30%<span></span>
</td>
<td class="nump">13.50%<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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforproductreturnsMember', window );">Allowance for product returns</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_irbt_AccountingPoliciesLineItems', window );"><strong>Accounting Policies [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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Valuation allowances and reserves</a></td>
<td class="nump">$ 42,693<span></span>
</td>
<td class="nump">$ 55,191<span></span>
</td>
<td class="nump">$ 53,920<span></span>
</td>
<td class="nump">$ 42,693<span></span>
</td>
<td class="nump">$ 27,673<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<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_irbt_AccountingPoliciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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] for Accounting Policies [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;">irbt_AccountingPoliciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Cuts and Jobs Act of 2017, Provisional Income Tax Expense (Benefit)</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;">irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Cuts and Jobs Act of 2017, Transition Tax for Accumulated Foreign Earnings, Provisional Income Tax Expense (Benefit)</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;">irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_AdvertisingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingExpense</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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_CashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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://fasb.org/us-gaap/role/ref/legacyRef<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_CashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-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_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13531-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13537-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-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_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-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_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 equity security without readily determinable 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 321<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116654751&amp;loc=SL75117539-209714<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount</td>
</tr>
<tr>
<td style="padding-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_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax expense (benefit) for remeasurement of deferred tax from change in tax rate pursuant to Tax Cuts and Jobs Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-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_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesBalance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-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_ValuationAllowancesAndReservesBalance</td>
</tr>
<tr>
<td style="padding-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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember</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_srt_MajorCustomersAxis=irbt_TwoCustomersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_MajorCustomersAxis=irbt_TwoCustomersMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</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_srt_MajorCustomersAxis=irbt_AmazonMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_MajorCustomersAxis=irbt_AmazonMember</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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforproductreturnsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforproductreturnsMember</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>45
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817292704">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_LeasesAbstract', window );"><strong>Leases [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating Lease, Payments</a></td>
<td class="nump">$ 9,540<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_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating Lease, Weighted Average Discount Rate, Percent</a></td>
<td class="nump">3.61%<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_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating Lease, Weighted Average Remaining Lease Term</a></td>
<td class="text">9 years 2 months 15 days<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_OperatingLeaseCost', window );">Operating Lease, Cost</a></td>
<td class="nump">$ 8,777<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_VariableLeaseCost', window );">Variable Lease, Cost</a></td>
<td class="nump">4,096<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_OperatingLeasesRentExpenseNet', window );">Operating Leases, Rent Expense, Net</a></td>
<td class="nump">12,873<span></span>
</td>
<td class="nump">$ 12,900<span></span>
</td>
<td class="nump">$ 8,900<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</a></td>
<td class="nump">$ 53,227<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_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-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_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from operating lease, excluding payments to bring another asset to condition and location necessary for its intended 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="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>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_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-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>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_OperatingLeasesRentExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Rental expense for the reporting period incurred under operating leases, including minimum and any contingent rent expense, net of related sublease income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 840<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=77902758&amp;loc=d3e41499-112717<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasesRentExpenseNet</td>
</tr>
<tr>
<td style="padding-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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 right-of-use asset obtained in exchange for operating lease 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-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_VariableLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=77888399&amp;loc=SL77918982-209971<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableLeaseCost</td>
</tr>
<tr>
<td style="padding-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>46
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6820352592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentTextBlock', window );">Property and equipment</a></td>
<td class="text">Depreciation is computed using the straight-line method over the estimated useful lives as follows:<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="3"/></tr><tr><td style="width:59%;"/><td style="width:40%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Estimated Useful&#160;Life</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5 years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3-7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>Lesser of economic benefit period or term&#160;of&#160;lease</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment consists of the following (in thousands):</span></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="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13,588</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>12,339</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,494</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,231</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>79,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>60,281</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>39,538</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,701</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,933</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>15,638</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Subtotal</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>156,766</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>122,190</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: accumulated depreciation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>80,778</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>65,164</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>75,988</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>57,026</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="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>47
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6814105088">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_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_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,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_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding</a></td>
<td class="nump">0<span></span>
</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_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<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">100,000,000<span></span>
</td>
<td class="nump">100,000,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_CommonStockSharesIssued', window );">Common stock, shares issued</a></td>
<td class="nump">28,352,390<span></span>
</td>
<td class="nump">27,788,272<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding</a></td>
<td class="nump">28,352,390<span></span>
</td>
<td class="nump">27,788,272<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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-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_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) 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://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-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>48
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836557728">
<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="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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>
<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">$ 85,300<span></span>
</td>
<td class="nump">$ 87,992<span></span>
</td>
<td class="nump">$ 50,964<span></span>
</td>
</tr>
<tr class="re">
<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, net of the effects of acquisitions:</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_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">37,159<span></span>
</td>
<td class="nump">36,574<span></span>
</td>
<td class="nump">25,499<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfEquityInvestments', window );">Gain on sale of equity investment</a></td>
<td class="num">(8,439)<span></span>
</td>
<td class="nump">0<span></span>
</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_BusinessCombinationBargainPurchaseGainRecognizedAmount', window );">Gain on business acquisition</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,243)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">23,744<span></span>
</td>
<td class="nump">25,804<span></span>
</td>
<td class="nump">19,751<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Deferred income taxes, net</a></td>
<td class="num">(11,118)<span></span>
</td>
<td class="num">(10,848)<span></span>
</td>
<td class="num">(999)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherOperatingActivitiesCashFlowStatement', window );">Other</a></td>
<td class="nump">7,267<span></span>
</td>
<td class="nump">1,837<span></span>
</td>
<td class="nump">864<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities &#8212; (use) source</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_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="nump">13,064<span></span>
</td>
<td class="num">(23,920)<span></span>
</td>
<td class="num">(53,251)<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Inventory</a></td>
<td class="nump">7,307<span></span>
</td>
<td class="num">(58,546)<span></span>
</td>
<td class="num">(1,470)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="num">(3,310)<span></span>
</td>
<td class="num">(8,533)<span></span>
</td>
<td class="num">(10,562)<span></span>
</td>
</tr>
<tr class="ro">
<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">(20,536)<span></span>
</td>
<td class="nump">22,470<span></span>
</td>
<td class="nump">17,457<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherAccruedLiabilities', window );">Accrued expenses and other liabilities</a></td>
<td class="num">(386)<span></span>
</td>
<td class="num">(1,145)<span></span>
</td>
<td class="nump">30,305<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">130,052<span></span>
</td>
<td class="nump">71,685<span></span>
</td>
<td class="nump">76,315<span></span>
</td>
</tr>
<tr class="re">
<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>
<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_PaymentsToAcquirePropertyPlantAndEquipment', window );">Additions of property and equipment</a></td>
<td class="num">(35,337)<span></span>
</td>
<td class="num">(32,422)<span></span>
</td>
<td class="num">(23,371)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities', window );">Change in other assets</a></td>
<td class="num">(5,436)<span></span>
</td>
<td class="num">(2,363)<span></span>
</td>
<td class="num">(1,542)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities', window );">Proceeds from sale of equity investments</a></td>
<td class="nump">9,787<span></span>
</td>
<td class="nump">856<span></span>
</td>
<td class="nump">1,267<span></span>
</td>
</tr>
<tr class="re">
<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 business acquisitions, net of cash acquired</a></td>
<td class="num">(2,817)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(148,765)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireAvailableForSaleSecurities', window );">Purchases of investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(6,438)<span></span>
</td>
<td class="num">(10,578)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities', window );">Sales and maturities of investments</a></td>
<td class="nump">12,880<span></span>
</td>
<td class="nump">14,000<span></span>
</td>
<td class="nump">13,066<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_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(20,923)<span></span>
</td>
<td class="num">(26,367)<span></span>
</td>
<td class="num">(169,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_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>
<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_ProceedsFromStockPlans', window );">Proceeds from employee stock plans</a></td>
<td class="nump">7,147<span></span>
</td>
<td class="nump">10,366<span></span>
</td>
<td class="nump">10,573<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Income tax withholding payment associated with restricted stock vesting</a></td>
<td class="num">(7,277)<span></span>
</td>
<td class="num">(3,532)<span></span>
</td>
<td class="num">(2,983)<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Stock repurchases</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(50,000)<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_NetCashProvidedByUsedInFinancingActivities', window );">Net cash (used in) provided by financing activities</a></td>
<td class="num">(130)<span></span>
</td>
<td class="num">(43,166)<span></span>
</td>
<td class="nump">7,590<span></span>
</td>
</tr>
<tr class="ro">
<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 exchange rate changes on cash and cash equivalents</a></td>
<td class="nump">20<span></span>
</td>
<td class="num">(414)<span></span>
</td>
<td class="nump">130<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 increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">109,019<span></span>
</td>
<td class="nump">1,738<span></span>
</td>
<td class="num">(85,888)<span></span>
</td>
</tr>
<tr class="ro">
<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">130,373<span></span>
</td>
<td class="nump">128,635<span></span>
</td>
<td class="nump">214,523<span></span>
</td>
</tr>
<tr class="re">
<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">239,392<span></span>
</td>
<td class="nump">130,373<span></span>
</td>
<td class="nump">128,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_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental disclosure of cash flow information</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_IncomeTaxesPaid', window );">Cash paid for income taxes</a></td>
<td class="nump">$ 22,582<span></span>
</td>
<td class="nump">$ 39,517<span></span>
</td>
<td class="nump">$ 25,879<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_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_BusinessCombinationBargainPurchaseGainRecognizedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>In a business combination in which the amount of net identifiable assets acquired and liabilities assumed exceeds the aggregate consideration transferred or to be transferred (as defined), this element represents the amount of gain recognized 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6571-128477<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6387-128476<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6396-128476<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 30<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=116859721&amp;loc=d3e6527-128477<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 25<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=6911189&amp;loc=d3e6393-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_BusinessCombinationBargainPurchaseGainRecognizedAmount</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118951113&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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>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_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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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_GainLossOnSaleOfEquityInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 carrying value and the sale price of equity securities, not separately or otherwise categorized as trading or available-for-sale. This element includes investments in which the entity holds a small ownership stake (generally, less than 20% of the shares outstanding) and cannot exert significant influence.</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_GainLossOnSaleOfEquityInvestments</td>
</tr>
<tr>
<td style="padding-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_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4297-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_IncomeTaxesPaid</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_IncreaseDecreaseInOperatingCapitalAbstract</td>
</tr>
<tr>
<td style="padding-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_IncreaseDecreaseInOtherAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other 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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_IncreaseDecreaseInOtherAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-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_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-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/disclosureRef<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=118932676&amp;loc=d3e3521-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/disclosureRef<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=118932676&amp;loc=d3e3521-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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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_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_OtherOperatingActivitiesCashFlowStatement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Other cash or noncash adjustments to reconcile net income to cash provided by (used in) operating activities that are not separately disclosed in the statement of cash flows (for example,  cash received or cash paid during the current period for miscellaneous operating activities, net change during the reporting period in other assets or other liabilities).</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_OtherOperatingActivitiesCashFlowStatement</td>
</tr>
<tr>
<td style="padding-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_PaymentsForProceedsFromOtherInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24072-122690<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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=118932676&amp;loc=d3e3213-108585<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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=118932676&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_PaymentsForProceedsFromOtherInvestingActivities</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 to satisfy grantee's tax withholding obligation for award under share-based payment 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/disclosureRef<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=118932676&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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_PaymentsToAcquireAvailableForSaleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 acquire debt and equity securities not classified as either held-to-maturity securities or trading securities which would be classified as available-for-sale securities and reported at fair value, with unrealized gains and losses excluded from earnings and reported in a separate component of shareholders' equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118954083&amp;loc=d3e26853-111562<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (a),(b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_PaymentsToAcquireAvailableForSaleSecurities</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 sale, maturity, prepayment and call of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3151-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&amp;loc=d3e3179-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 320<br> -SubTopic 10<br> -Section 45<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=118954083&amp;loc=d3e26853-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_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities</td>
</tr>
<tr>
<td style="padding-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_ProceedsFromSaleOfOtherAssetsInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the sale of other assets recognized in 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/2009/role/commonPracticeRef<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=118932676&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_ProceedsFromSaleOfOtherAssetsInvestingActivities</td>
</tr>
<tr>
<td style="padding-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_ProceedsFromStockPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amount received from the stock plan 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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3255-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_ProceedsFromStockPlans</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6592007824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition Contract balances (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Contract with Customer, Asset and Liability [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Contract Balances </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about receivables and contract liabilities from contracts with customers (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:57%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>146,161</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>162,166</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Contract liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,991</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,756</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company invoices customers based upon contractual billing schedules, and accounts receivable are recorded when the right to consideration becomes unconditional. Contract liabilities primarily relate to prepayments received from customers in advance of product shipments. The change in the opening and closing balances of the Company&#8217;s contract assets and contract liabilities primarily results from the timing difference between the Company&#8217;s performance and the customer&#8217;s payment. During the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$5.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$6.7 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, of the contract liability balance as revenue upon transfer of the products to customers. </span></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_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 contract balances and changes in contract balances.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130551-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_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822943344">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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 );">Schedule of financial assets and liabilities measured at fair value on a recurring basis</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value Measurements as of</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 2 (1)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level&#160;3 (2)</span></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;"><span style="font-family:inherit;font-size:10pt;">Assets:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds, $17,016 at cost (3)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>15,314</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,346</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>758</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>758</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value Measurements as of</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 2 (1)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level&#160;3 (2)</span></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;"><span style="font-family:inherit;font-size:10pt;">Assets:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Money market funds</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3,730</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds, $30,035 at cost</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>29,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>776</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,730</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>30,381</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,130</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,130</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 2 fair value estimates are based on observable inputs other than quoted prices in active markets for identical assets and liabilities, quoted prices for identical or similar assets or liabilities in inactive markets, or other inputs that </span></div></td></tr></table><div style="line-height:120%;padding-left:48px;padding-top:6px;"><span style="font-family:inherit;font-size:10pt;">are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.</span></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(2)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 3 fair value estimates are based on inputs that are generally unobservable and typically reflect management&#8217;s estimates of assumptions that market participants would use in pricing the asset or liability. The fair values are therefore determined using model-based techniques, including option pricing and discounted cash flow models.&#160;Unobservable inputs used in the models are significant to the fair values of the assets and liabilities.</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(3)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;December&#160;28, 2019, the Company&#8217;s investments had maturity dates ranging from February 2020 to March 2021.</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&amp;loc=d3e19207-110258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&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_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>51
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823025104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventory<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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 );">Inventory</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">6.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Inventory</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory consists of the following (in thousands):</span></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="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Raw materials</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,825</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,992</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Finished goods</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>154,522</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>161,641</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>157,347</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>164,633</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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/disclosureRef<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>52
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813740960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Working Capital Facilities<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_DebtDisclosureAbstract', window );"><strong>Debt 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_DebtDisclosureTextBlock', window );">Revolving Line of Credit</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">10.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Working Capital Facility</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Credit Facility</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2018, the Company entered into an agreement with Bank of America, N.A., increasing the amount of its unsecured revolving line of credit from&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$75.0 million</span></span><span style="font-family:inherit;font-size:10pt;">&#160;to&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$150.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and extending the term of the credit facility to June 2023. As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company had no outstanding borrowings under the revolving credit facility. The revolving line of credit is available to fund working capital and other corporate purposes. The interest on loans under the credit facility accrues, at the Company's election, at either (1) LIBOR plus a margin, currently equal to </span><span style="font-family:inherit;font-size:10pt;"><span>1.0%</span></span><span style="font-family:inherit;font-size:10pt;">, based on the Company's ratio of indebtedness to Adjusted EBITDA (the "Eurodollar Rate"), or (2) the lender&#8217;s base rate. The lender&#8217;s base rate is equal to the highest of (1) the federal funds rate plus&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>0.5%</span></span><span style="font-family:inherit;font-size:10pt;">, (2) the lender&#8217;s prime rate or (3) the Eurodollar Rate plus&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>1.0%</span></span><span style="font-family:inherit;font-size:10pt;">. In the event that LIBOR is discontinued as expected in 2021, the Company expects the interest rates for the debt following such event will be based on either alternate base rates or agreed upon replacement rates. While the Company does not expect a LIBOR discontinuation to affect its ability to borrow or maintain already outstanding borrowings, it could result in higher interest rates. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The credit facility contains customary terms and conditions for credit facilities of this type, including restrictions on the Company's ability to incur or guarantee additional indebtedness, create liens, enter into transactions with affiliates, make loans or investments, sell assets, pay dividends or make distributions on, or repurchase, the Company's stock, and consolidate or merge with other entities. In addition, the Company is required to meet certain financial covenants customary with this type of agreement, including maintaining a maximum ratio of indebtedness to Adjusted EBITDA and a minimum specified interest coverage ratio.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The credit facility contains customary events of default, including for payment defaults, breaches of representations, breaches of affirmative or negative covenants, cross defaults to other material indebtedness, bankruptcy and failure to discharge certain judgments. If a default occurs and is not cured within any applicable cure period or is not waived, the Company's obligations under the credit facility may be accelerated.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company was in compliance with all covenants under the revolving credit facility.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Lines of Credit</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has an unsecured letter of credit facility with Bank of America, N.A., available to fund letters of credit up to an aggregate outstanding amount of </span><span style="font-family:inherit;font-size:10pt;"><span>$5.0 million</span></span><span style="font-family:inherit;font-size:10pt;">. As of December 28, 2019, the Company had letters of credit outstanding of </span><span style="font-family:inherit;font-size:10pt;"><span>$0.5 million</span></span><span style="font-family:inherit;font-size:10pt;"> under the letter of credit facility.&#160; </span></div><span style="font-family:inherit;font-size:10pt;">The Company has an unsecured guarantee line of credit with Mizuho, Bank Ltd., available to fund import tax payments up to an aggregate outstanding amount of </span><span style="font-family:inherit;font-size:10pt;"><span>220.0 million</span></span> Japanese Yen. As of December 28, 2019, the Company had no outstanding balance under the guarantee line of credit.<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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>53
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6818712096">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_irbt_ContractBalancesAbstract', window );"><strong>Contract Balances [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_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of Revenue [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Disaggregation of Revenue</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about disaggregated revenue by geographical region (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:58%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">United States</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>603,618</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>560,995</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">EMEA</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>357,760</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;"><span>311,659</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>252,632</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;"><span>219,930</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,214,010</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,092,584</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Contract with Customer, Asset and Liability [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Contract Balances </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about receivables and contract liabilities from contracts with customers (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:57%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>146,161</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>162,166</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Contract liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,991</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,756</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company invoices customers based upon contractual billing schedules, and accounts receivable are recorded when the right to consideration becomes unconditional. Contract liabilities primarily relate to prepayments received from customers in advance of product shipments. The change in the opening and closing balances of the Company&#8217;s contract assets and contract liabilities primarily results from the timing difference between the Company&#8217;s performance and the customer&#8217;s payment. During the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$5.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$6.7 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, of the contract liability balance as revenue upon transfer of the products to customers. </span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_ContractBalancesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Contract Balances [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;">irbt_ContractBalancesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 contract balances and changes in contract balances.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130551-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_ContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="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_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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=118956577&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_DisaggregationOfRevenueTableTextBlock</td>
</tr>
<tr>
<td style="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>ZIP
<SEQUENCE>54
<FILENAME>0001159167-20-000007-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001159167-20-000007-xbrl.zip
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
M@<5D'H,R5\SS7/\6 ,C[+L#/;Q=;-FWV/?A"MA5'-:*\1R&T!4<!_8UA]3$
M;X#5Q<$<;WV[N/*(_;X;OK*%SE*CRVNAR^OK*UN@2RV&WB.B;"&&:EOH-6VA
MUQ=%6ZBX_2"*+VZN;.]8TAF>A!XKNWLW2NP68J9&A5J0U*A0"XC:5CD46^6U
MA0B@RS^N#S*!:)G%JJ\'J.6 -,>R:_O!2N)I$,).BL8<HA\@%V*?]_<D=*.)
MZQQ/1E^1EI9WF3/CUF_S6,/49GW0!WC0>R@2Z&9YNZG ^"L+;D-[/G5AIX6C
M_AKXORRW4>\'O@//A"1B<()>;]%COC.=V6%QXB'I(9<@:OR$?67QYM>L9$9D
MZUJY^SAP#?."*Z%<&/GWRV[[HV\ZI!R:EYW2_E:QFB*R\9#?C3W3J4FS)LV:
M- _18#!KTJQ)LR;-0W3]/$FA'8#*'\6N,\!_^?3E-T43E?M[-TK4DSAU=F&
M$39WG"#$Q!#P-X48C]AIS3%J%#D,%#DR+E(+E;?.,9YDF=?H\-:MP2>A0RU
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
M]IP_A:A>_3FX$50$FGH*@"5Z"Q7'#9UDAG,;'<1EQTE"CG*H^VQ8$,$7$(0
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
M1_Y> M=KL%TBY2N92H!)/RFK1U+,X ;ZC*<?.QV>5BN2>!^=\ V8\33=I)
M;#3Y5[?(%^OJ>OO)-3L;EKJ'%/.^9%;<PTPF.C',M'V_D$?3((D8EOCG^>L*
M6JRF&+\THFBZ\1J8HJG:UJAB=E3]"%!EP#!@'J*_+,^AR-/@WKID[ ;V9&;/
M!7MWD!FF#$XD;;GDT^,RF2= L3O\$W(>P+"0Q]F$NT#Z]<8H\M, -WX=LT6P
MF; K',^@.P0\. L,D?L=X&$9\*PLLZJQ]*UAZ2AAJ,#8(5<E5]QAI$@*]W4T
MM=.LD"6O,KGZQXC/N5"* UCK^JEF*=QTC<Q')_(M\>4<&5W$=TPS^0DOU5CX
M7K!PR'-F*3 7@'IZ*@,F]IQK9C+ZGWJ^1)B"NW3(*.!*?^;^QY?][>++4+'F
M<\'S%)<;D8"8)3R2HI\-(@'I8V7^K7V+/B?\)*!P]I5<;/S0T+36_?:#I-_
M@$A8EOTB;!#7R2):E.63Q0O0I!/L,I?2DAJ='P\-<VH&MS=E,*210Y-@+J6A
M<)%(;D7)G9@'[ K'=SZ052DFT<-]3[EPQ;!G=C.\YC:T9ZF*N9PE14R//B#Y
M'AJV&+G.N)Y0/U/F]]/!L;P:<?<FF7F4DCOO4B.W*)?1$\G=5\)_)\4GCT)+
M1V-!LE,0FX2W**6@G!),)&$^(4]2$INF]$82X34*OB,4C/ L,2L=L2A+"T93
M5W1B%*FA:;0<<)+7O90@5LX8)Q2C!'D9$(C@KM^"15J8-*:VCG C15J+@IQL
ME-JC\WX0\4HDF^>RB]-RG90UKB1?I IC@"X=@!=);0P^/%#B%U<'$"LQE4-A
M-S?PC:C@I2EFA\SL[VD\S'7R6$\1*YN<[901A1YK6@[UR8[B9)).:0/B*2GW
M>GWLK8V7_>#N.8]WY**&:3XT5S:S(,C'FJ6]&Y8FXAE!$GD+7B:#%LJ,*UM8
MK)"$:6K=4G6,2.@EUH89JX&?,I<H&9_:4<1F(+9EEFHA=)IF!?."C'SRG\@1
M1AY)OFS!&R5;Q!1,7A^790Q0O4KMLWXW2/L%[(Y;Q![V,*?1ASQ]/4U/SM(%
M5M.2\YG^">P#3&[G>Y9!@6YJ=//(_( '-IO+U-]XBC5B\CM4'F7/Y@)G)2[>
M!5XRXY,=9>IJ[<M^5]@IA@YBBP$>(.;E 2+-A8QATN%8+OC&)X$B?UPIKL"0
M2YH@3]PO3?OA:14;5;B#2VO+LIH//"V9%P#*[+3EI/_ERCXG+TN)BU"Q5J'D
M(9?O;RM4UH=EQ#@,EEB/S"BJ+DA83E>]L>\"+'U=*"$8QNX=3Y!-774-,F^I
MU#9F_D3DFA>*T_-6,Z9CK2:--43-*WQ3QJ?3 CL>SA:><%'%L)*,<Z9@13_/
M-K.C6(DH\.(M%T/?!+!N1H&:RDJ0@O-3YO5G?J: 7NQER88,1P+9#M];+B$+
MS2&P@&YA33([2&1Z"4NNHM:\X/IJ<)^"?#X7IL\GP)'2<A^$WY4X;1#!TX_P
M00KBYVK6E3O7QG+D9"+3P-P[/'?RI\WGQ<8UA!Z\6L(6ON%,1QNS^!Y1I.#P
MR/K-K":9Y50NNS1@<?!UH+]FJ5KYM$(1Z,.^0(B3B9\_/4XQ%'H4'O ,,B5I
M953&A'P;&4#.W[E2J$QG"H<C$LZ6W4ZB7)'"Y/ ^WZ4#!0R-B-+_8).&9 .G
MH2LH(:MA7\K].%-Z*_%,0+XDBE>QB".7Z]^$0(MAXE O(*D663/[#\"=7]DX
M;0*?5KO@ZT]SV:-"5:<?22=W_1P=Y9H<)*Z'!3_45N6__> >8 Z'T:=UI*DO
MOR>N\]U;E!3L>XNTSA_I^Q36<FIC6PJ>8;.0*?TRK:; /;,BKP(;Q2/)HKD\
M:<M;8&&I&RW#AFJF;,SR2ZO- X^:^=S97D**6S[5<V+'MF#3P'OI$9%MR*$H
MMR5K?WE^CG M,7N&V:HTB#4J<-,T6:A ]*1J/C*)="44*9MY9.V,\E3C(FEB
MBJ^L?P/0RJ8AHKYL);29(B325,H<;8520V!1B8\R)1:I<Z*\%1]-_6>H[K*,
M-"5>+F79P5T\EPG3E20@TT8HAU5=:CEA$/&SS+(&4YF_E(J>9K:#<,7(,J]T
MS/&9I9)_Z07,^J\0YDGN0J6D'AT"XBJ3I;W)<A+#<B<)LICRV=31GXDYS3GN
M-D2%7\C$>P4>'W1-3*NNB=E;34QW-[0B%":7-RR16=GHQT8]#F6DD!!YX2"8
M+_;1D:U^9FY$GO53WOC$CKX3Q^=%?&F+'2HNY!JEQW5VZE(P*53]$D62:HJ*
M*=_R:LI_B9).$B,G$$GJBZ6B%8=Z(/+K((FSFH5"]R+AZ8?USI0;-^;^_0C+
MZX'C>8M<47]&I)Y[PPCB0OR!J$;5.T"-84O&^&*&X3>A'QV\DDG]AV1;A%2K
M*Y1V)-3Y9J595UY,Y9DNGF)9L53NY3R=.,?1>7-)]_>$Y9A[JM.  !;/"!',
MBU* I65=OP2KQ[$_LD48KRCE_0>(SV/3("XR\#VTQG1U2%C8!!/HT^>.N&EJ
M!S-J*,;F,6\K>;.L&I8IZIEFS?L2D#[7X!I5H957"I9"ERAIG>;5+?[%/Y/+
MV0]F"Y%5@!TVF&03PD4M5,7"8\NMI)C(B<'CQ4IZWG4I[2F%5+I,H)1F(ZE2
M( !HKP&-"3Q3!DLM :@XGWLNL8]26J8O$2#?+ [UYH)EB3>*3D2\-<1<$0OD
M"9.YIB)H060M <3;V:1<DRXH%;RS"S&CO+V2-:-(F77.#B^DJ<LZGY#Q)@$3
MT:4$WSRSJ2-&UKQ+OB*2\QP:Z%MSN+\A!+TPNT6>IX(."2#-[/. 8]C)U0LH
M%$K.6S#8[)"LI=_03F(^[P:60P^*3O!7KHJ$0BN*/.KD'0>K>FHA=4901:H#
MINM-Z80$5LX=2 5LPAN8U3%)U]135/&\!EIN*/ &7,)WL2Q[),;Q8L24'G$K
M;A1+),N*HSA?(]Y*!5);BJ*RSOG[4-J%+^?@)9$HAO06/+U F25>["(C%QL@
MC%^NHHV0*8#X6HBJ-<"1>>!2\V:;-ZSAK8*+3:5T0T5LH%8!INA%16UE"XI0
MGF$B@8$N XO'/@"\6W*Z,-I;VD5QI8,:9N)0KZ(H6BFSXP9QA/@=+271OG0<
MI:N_2KY"]ZWG*[15%1U0Q"IR6(-_YN<N,9FC/<7U&#N-8G3S92*#%_<**1V0
M*P&0CF-:1 ZM1=I?6K(LHIB4CE#_08F1)=HB"TVBJ5#W1&DNN2NBG&F!F65
M#]1U=8SH[+G?T1_FANCEBU%7:<#?1!VS8X?\CW_\03*9[XK<ZBC.Q-(RH(AV
M?OXDM2!^=4=NP=>WXJQ]_:!C32S[(19FI+1RG@680(I?@?K-9J+A7Y<[;>!F
ME_+/;$RIF&1M4X$P!"?/'-^$9F6H=<W?)+"1T#5:3H4;N*",#$"1<O)1I@8%
MWCF!G8+1@"YR3E$R5<2FY:1:I /K<KV8*[>"II!8,$D]O&78SK>X'!G!R45M
M<D$N[I1-[96\_OXL'G%PJ70UM>V'VLQRT62NB";*+/[.V%S8'6ES6.'41K9-
M%,F-$U*W19N)M!.%<N=&2"[Y;M?"<F'"C$'3(3,K9&='LN_!%$%C'DQ)\@"[
M=JXI:58<!V0538-[A0]6R(6X^7HGLK$:&7\\N+ 2[Y"=,5/1BQV9T["W$X@
M'.8XU(+IW9"*VTDIY1&2*;T;;52@#]DD$..:7K%#BU/H+BH2M*H,B:S=;^9/
MAFLA>5CGHE(%VW!C8*L8C>*,GEQ5>)NF<EXOK&&1\R6[LMC^DI96,'AX=TCJ
MCX@U,QX7)-)TPMUUX$-)T?,M6^6G.B7FHRVH01*.E!F[?N9CRF9<\!U; CB.
M$,1N- \BVQ,QSK%(1<^@FP=FZK^.R$]$#BA8RRV*W3'RK<RB)+\Z8]\CWM41
MX7-X-;$U@>^'P".S0O/\8B^$2Y/\4O*V? -%\I4%49RF/35*^I]RVD'W)R9\
M$EZWGD:$C:P9*GPW"C@R2V1W*/*3EI7+MV$*4G++Q_20:18UB!4)/54XSJO<
MS2G[R#$<+I"=("261#R'U\W! H3>&P7S*7E**.R;TUYY_2?W*A;\ATA[J;.U
M(9S_Y(LM^$4+?"@RE_B0U&ESK$B<6<J.'LE:I+\26 :W,$"Q.95J>M$8#S&3
M88YI%&)[V"HGU>B%QB%F)?'X%WJD6(05K,+9R7FB8)"Y%?:E6_>*MXE]A+YQ
M<.Y'GC^VI[Y_.UICB?<QUXTX\^^EI";-IH!CLM"2TZ@9>P"DC'A(%Q$;AVRD
M!J+0H"D*4>6O_)-FFN2A;)DF1_EB&EZ1YG&&"D\OM&=SBI24?3 1Z4WSQ+-S
M_GG' SV8V -E[V X@K]4;B8=_#%S'2RN&9-WGQX2U1!(@)AGQY^EC,?P+G!#
M3B 3%_.'D8X\]_?$G2S;#-E*%@ZO]")#0\PRP5)<V%4!"-F!E![#([VMK]S7
MK);C^Y'C^I)-FVLIKB_9M40J0CC!WRBCB\NS$$?^B/F,,BLB]%V4*FBTVM2
MG;=PS(E!$A;?P*9U*6/C[_#)JWEHBXQ7,%K'(<]MY1)TRNP)GZ<W0YD[0?E#
MPI,&8=::YWO!V&8.8W\M,?!X>2.UJXK8W*:?$7.!\T7WR"IQ8H+HK9_#]F89
MM@OWIBP*3[T9J;:9D0_G[A$?LQ%3%:Z8O$/9_FG0-3>V,)ZZ('<P\WJQ+&!J
M5\F[P>?9HPRI_*@'B7%NSI1*39V5#KP+FOB%J,CM@%.*1U7GL.73-.Q<-FJ:
M-!'%F7%"]H(]8U5&2\[]3G/ATEE<A37SA0E_C:B.I[H:Z3PD-D_SJXIL_S'Z
M_2$EHAIU(NI>$E&)573+;+2M<E%1P\!AGJEKO3 W$BOJ09GY[/K?ESJ/H->L
MBECY%"<9,  BZPC;W\QEB18-%:[WD!S[/2'7YVG._2;(SY?Z_-;#75_*M*5.
M0@=OV>8Z7<J*=$!:<IIRCNBS^S1L6NC6FLW<R8W/D5:4<-6F"5\\FY\F-I\I
MO_C$DV5_\]77"+]3B!9RX.>8\AB9JDTM]4/>#S&U!G.+@*_>T#AW\G-S4Y4>
MQZ@,ER^\1WO<0:$R9A3'D19M.D 0'CD-;G@53AA7U<GEO3TB=I1I4#<>>W S
M76W"L* 51X:)V=ZB8P\LNY!X >8QVA>P!$?F-SL)I8OFG&!8RXWHH] 843XH
M._ 1^HPZL\/V<#)Z?F@1[[XF1K>5C]KBN199UFH2,>$U8Y,QEI!C1W!,H>/9
MG*)6G'\HEYG*'M%.*VV<Q=:US;)Y+-Y=GI0J*XD\=T;+#WR:Q29FG\@R3%!/
M<9F_)S0+.&H(@Y_7PE'A^YRG!%)_.)!,P(I8KAN7[,X/L,,^$'QB9#;GJG0\
MRF&Q(9S*=.!<J&)*96&>%)Y .H"2)Q!3/J],B\I/6N64S_M=35UO$N*X&XR#
M*1C]);,<2X'0_D]'GF7#3G/?Q"HUD4?!LTDYH^0SXRJ[&86,RMK*1U[MM*G1
MM5PQ;"A]:X-[#JE@&#V%#>1Q><!03;YX@MG10G TT(]%Y3V""KAT.CF#NL.*
M* 7.:Z<GK?F\H7QW)R0OB)U@0IHM(2W>CZ/O;!IDYLGY@?#&!;(7T+R!^KP
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
M5>YC%6_BO35YD@*F^,1"0*7M+MTH2M)![B M750[TO /LFA0?I#Y3X,@U=H
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
M?=<^= =VG]RR9&D?MJ/R>IIFFZ$NDPVL%;V@'+D1')X9VG-W G]D8-3>2:(
MP_<WF9LP%?V+\Y[:AA)-W9MB@A"O*2$-BQP?N7@I19!YFKUL8SY9B??FB?M,
ML10_H=D+<"5?"9 57Y.[0&!L%O]/([ X'#%-1\O*X)?3P!O"V^@O,E<7APZF
M5-(WBNY$R@Y#7Z7OR*1Y7B@.E$1^@(CWW,1&3 $:_Y+0BD-3\U^1G993)QMY
M:,/ QT8VA7@SZ:FV7RA"E_&!*R#Z!(-BG__: /KRT2?@.@WE?UP[F+E :,P)
MX P;RM_<&$@3_C+DG_&2!R!8=\+X -.K*:!.HQ"VYMV8T[7S.#,'JNR(D?70
MD.L9+"(,MO?<B%(#\=5_"Y!I<Y!CBX!\91S%$WBVKGQG-B--O'+H!'>V$_'
M:!@XWS%R:0NIXGYV;]B9D@_U<P-!LL%\DA:/MZ6=)[,</]FRH6K&+>V3L]G\
M$<+/8PSCD7>\,&=91CX*V6&4$$8N<1M#D;=9$+_,:_"ZN>'4^2?G:2_02AK3
M3VMG\,\;!CMFV2)+#;YI<AWY?$3Q6X#\B:B+: H]_]2(CGM:,$3.2[/RR+H\
M6H5[?>-E))ZQ>!I,>#QK$J0L T/I-#^8,ANX%YL'.4*>_)+[T@IVK+A]><R.
MUS\YF?A(3<Q\SA]O@">]S94?G29P *>B=?"DT'D/=TJ_.[G2P*V3N5\P-;K@
M#! P\U%#]/*R"J-4@E^*0,6*B!.,=+E+2J,P#$H.K.%J+08[^?S<ADCD<P)>
M;"C: Z:5MIS7"V?S'+.7W3M1FU:8&+P\'5BD4C7R@YD;^28ELINLT$HQ/B7Z
M(HEH$NKDP/?E\*SEG-R&3-"C'()Y(F9*'!8?N2CZ<$*&8"H<+Z$^]_OP!%E*
M)A'YL9DC2!:GY(]48 0VB<P[A%="]*N0RQ1C;,0285]'WD8F/]":1[9Q4+AD
M,<NCS$5/*KFGF1L+Q1N[J&7-V%+/TU(WK$Q-RJ]X22EJ%-/UT?CBF8?TH!SU
M7EJP*PL"<@DV.8YN4X96OD%C[,X2KV"?Y7)#LP(_E+JBZ"Z#+"!?A)1*8TT.
M7*4_IVE=P*XQC/,-4[#">'%<[%(&4WB"TK+[U/5YBIEHP9:F( "#9=0#+5^T
M5*R22K-0Q!PS0;LRUIH6;JWD+U,=A&C2R"L5, <BG8TFH#T7T%9"D8&Z5/C
MF;U,&!MC0RW4I;E7D,:#I1."T)/@D_(6S!?\=5Q_94@%:*R(-$WQ*T^6YOZ
M3']'9A)M7F95)P@[9[!@O EC4%F9N%QVUK8CFTLS!5PDQ2>S,W+O$IOC5<18
MQ.%B.H^/Y@"2>R[VR^\L^+(I7P)>(GVJBO0R\^0VYDT40]64K*U-"DK>H J5
M+HV"DG)+Z0VY#XML"4Q?H^2FK :&[*?\JPQX5<DZ%<169%9IAK!8#]<^$0-6
MUBA5I5O7%[G=;BBR[W6]H?B!U*S7G"=B711XC-)$T$?%2V%$@!^GPBX'RHG1
MKWB7\%#26#A/)A:[_"$(R^!#O#Q+X?VQ"(W[J1@YQ7L-4[8D4"QE+(!@!-DR
MXZ, Q2*YBSM%T$H:E\T3J=@H2^C=0,]W4GKF8RV%UI)10 EJ028:\H8T2% J
MLBFH;:*?]#D=05J#E'$TD5^0HAN>B#QW*OBF2O,%99&$,J>V07\:LV*2)M@E
M.,/K%HU+\EH"AYZ(I"2L1$4$(T:#/%(NB==C%=8EOH@=\8(Q[^:!)5.3=&%I
M+P.!S&6(GC;3Y'#EQYWU3!0'2@DRHI'VK1WR2@:T2_A4N3FVHHY36[4<P;&>
MS9Y'M+E;.* Q'&& ];!B'$X.J1PW=, TC:GYW>,@('$ACV>9D1P6\4,69? 0
M'P_2AY)$^'3G0 R50M8HX":@2YVLT^_*$N4DG2]>\&?E6D-F[R2+0IP1BB^$
MOV ?4SN<X7VVE_;<FX>,6Q%+4<=)D$FAPU81N%\7F0VY*C+.F<G$U%3*511@
MXAM^AG+PX.2"AC#D&[G1=0WE*PCH*0@^,+[[E.T-MHR%LTD;_",6E@DU>$M+
M_L3G(/BM(4S^1JY0I*%8(,1&V&\9D]-CI.1K<0SHD0+;F)8@B^,:RMW59^L+
M+?:?;DCH_BO0MMB=+/V30[ZSY9=]NO#>_-M$2V-!6YQ8\\H$R30BCC'F=.8
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
M\_;[CH=6E=]RE<U+7.+*DWTZ&D +55"I?(EK0W2W?#>$N8(@C_ BEZ;)+<R
M8X=P#)NR],;.?<F6E[AF'C@DI;:NH2YK*W(BDUM/K_-R%PG=AI*F]R+7@&J8
M7:DB><<(1TG!$L@[+,Z7?*A:^,5N]MGEL+E8$RYPX#&')OY!- DO%5Q_FY38
M2^9.\8Z>3,L!:Y8$<,T#BCZY SZQLB^UL;J2W$' '&(H2Z(2\3"C!,M[)<;7
M716E7,48?KI3ZF1QV2E(AN\)_TH$QD34I'"4#NR.DD<3IJ]2/+I0QLU,_&$Q
M2R0DR98<8I5'214BV=PO4;,XGG+]_(KMC4Z"@";"$TPW!C\"I9WVK,\!T,E"
M'OQ'=4,\>[70PW&[-)BB8[/F$DIFJ(IN$\<WFLR$/$N0E!1+"0%A/$4-P00U
ME,GX#R3042L8Z5*H10(U44\DK$-5D'Z=$MU9*=Q'X6#%XN$H#-JD=N,MV";G
M>#L6COOOH=#)XUNH[D2&0(.<(-&<"%VR)'",'0Z))Q%*A> ,-WABBPK(R$>2
MS">B,/"CD)>/MYM( T.RNZ705WOX+AO*DOXJE2SAQ(34;. JMN@M^R ;_F)6
M^:R2YB[=(\%MP577F#-"_N<,'ILT,QMA[OZ^1K3G*2-;/,@(J0?_U>"!-\*=
MS.ZJ6NHKF"F%&0*(@T8K_LFO0("7 [MYY,&\R"4(RCM FQM""B4U4#5CT(X<
MIL<9T*WU%42B?T\5855PLQ7N$.L#RD%8Q$*:%TWM^9;O0S4/4ZE>DG(7ZC5@
MH8Q:?46[S@_W0/#UYQ;]H/5C1<K*8]PDLTW.32EY')E5<^Z,8\GZ0[2JB;3P
MCBB J4HF2#'.(JU\=*+@L$/L33%KYEUX*VHRC_Q,/)PQUW&T6R!0Y 83G.%P
MD!U5.GB%@'M"<KD2+_J8<*DY.N);2OM@1M G?\*GCY)%,I* R2]PY]Q5S,!&
M;*G"3JG\Q0I\ V6?S!=1L]"I"@G:SO;.MH;N0QGD#*2P\YF@%UT[LYEC?+$>
MHUZ9A-[ #\'C+$LN.YJN91#9,.Z=0;Q'M)8T,!/@"+'045\W[N"8"A**3,5K
MVZ2Q(1VHQTA'Q-2%\G*WBC@PJFJM[Y;-[UB0SN[@)D;6(C(7[-8$@51N4&$!
MNBO$Q8&W7.,>[O7$<#L14?AB7DW24A8.P;\&O!\^$&];2I0J$33GOC*T(]">
MG@G++DQTD\TL<4)&Q)%\?[,TMQ):):CTV_<,*-BACBY0W16!:Z[IWI)B%JYJ
M)K*LTJX]3DM3T:5VIM OA=SMCKZGE1'CI1JELYE,].\;VQOT<X52+#\_PH6[
M@O6MB)[[70$#_%NTO YU"?\WUH?=9N-Z^L/1-GN*W]=C_*/\XWOZ:/!Q!"\@
MGE36'H;P8;"FP'_=/UCV3Q^U,RWG4^ ]//;5(WT(@?7L#*$;_Z .L' ^V4EP
MW,]D3QE%'>BJ,8@<>6_5: H&/-CA71.EO?F>Y*87GY<H/GJEN<J<N*63[[)T
M-G97MA,U#+?T O7"!4IZ@O(NRX4F+4%OLHK]SQLIB##"0T41&D%_*#[<2]5+
MD2IME:"E'QB;R*EC#Y?*8<@+K=NLG6Y9%I%U0U3O](CJ#T94]\?\ZSWFRYF:
ML*G,2!I06<>GR3E*@4ZY3SU*)WK?7 ;UA8V#Q?;3V@MJN564HR1JC4NN+M,[
MK;OY-9=G8Q!C).-QC;"P,;5RT7%UT5*NKK_D7I;TNW2>-+&NI"/\ZFB>!^-K
MQZFNILV^Z!YY*AD=;N%EG 4T:)<@F/:(6W6M(BM8.T!ZPP3:&,MOHH4MV**+
M2WE<LP??TRK2*F&?&6Y!166,/A]G(=72Q4FR]":R'[ "Q!H'?;C^M#,;T"J;
M'*:^=LUQ ZCQ72FY Q('I<(-4=\MA+8>5K_@D"A%D[%M%RND<3&;)66H*SD
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
M1.S9 !?/@DW9^,<;Q6$&9);4;<X@A!,$A%%X+^>SAB6^'G76;CB2A/7[*QF
MB* 545ZSF3C<6(\Z2YA6H!P3<H'9O+C&"'FZID@[Z!BV5M08N+ D$S5T)MF$
M%(P TJFODAL3KY6'N<I"V!X/W3B;^_F%5@+0#$<]8:97%YUWE'Z4J>FXVBKF
M0U2+<DR )P+;^,^4(_X?ZM-VU6JR4I7BT<<5@F-;3=<[043 +NL2XO5CP4J?
M *4IZ_\3O LL<X?I1XRDIX ]_RVF,ABJT2M3N 6%=A<.T<:K$C\<;Q!1DA#-
MA3@FM>2#NA?+5A*6 <E88GHM?6=6I63/<WVABN@DXE>[R@"/+X-K<EYPYR@F
M]NH<@B=47'Z[>^CY;PCA=*-MM[1MEY*RJ")HD2YVIESS]SL"VD<9-@>16DD8
M+T)W;%6CS(IP1]S@F-K!(5*+V@X23X[/NG>,'46WLBV[7?]/F5$ !4.H?(2S
M2.(HS=BI8@8I8EW+*V5YP);CQ=CI2^P=D.0TKRVW%8BZ#<E?@C[7WLK&D;P"
ML<RJJ36<#+PW/$RM"F"'3"?HM&OT!9H*26AY@$YI"N".@+X.?=XI=&;;B5%,
MIA7.R-= FX$;:+%42[O/A!%9"HQ(L2JA[),%XBAC81NEF(JV7[>4U56'D%@.
M3RUBHO,)0I,X-G&10B][6CVNI->F^-"1,741OG040GSY:'TNDD&U#G<_$8S@
MNB054A>[<@<G-4H(65.Q!ER[<U<=T^H_ S<SU1M+KW(B0@A%FHOW'7+/W[)8
MI1_3?W&KIPT<,R\F1N82)4PLTT53J^&'UPY5 K%GXBMNUALJV[$/3";!U23.
MJ/V0G=$201A*"NIS^J\&-&.,Y=EE <Y8C7UXDM%[A,%B*Q);CDF%B\(=G>2;
M<T0'Z-NU&EQIE[0=_4J5W<7$1*:%'G1^8L&5=)ZXSW-%LBD(5Q87[ EE@NK"
MA@958]4J7---GBFKH 56,96$A5P9H^V$[BNL%6IK Y@'%GA=I\5UF2RFQ#I\
M[7DZ3=*R*&U3AOINP2Q7]ZTD/,1=SG$0 ,0V+@F2&G %"9:INXHC0P'*1OO=
MII>2383XXH73*1J.J8B[;;6:^L)</4:9(,M$_H%W:#$1#'(!UU,"EU13\2^8
MUWKANA 3*UW5E-PL#+[Y>S--E"/-TK-8[1MP1C)-KZN>*0-2,')'0IZOD/8Q
M,%F1!4(X1+%HKJDJY:+^&Q(11!M/I()?UJR"=:?:O8+;$3'<V&*4@SEI;R&O
MO%:3EOJV1]QU&YLC\9T8/-2U"B<F!GZX#\1L/76V&_^(+G@56>;A<>5U:IJP
M&J$0(F2<@W"0E G6J@Z37,O +-4M W K\BD<(2Y^'EUR)21E=@=A^/:_L2<@
M\]6.;=G"T^O+G)Q7C$M()9I:@ZIVPGI7$!WW%42?K(*HZZI_ACVKD@GU+V3!
MAM/)(CSA9F]U@3<%*.ML-JZD 9P&6T#GET@<5'/Q\*+(<BGDAU%*DPD6>OC=
M"OULJ-=8(;!ZL4[=5U!SBLZD<0]"W@M?H8A-H&?(?8D]?$NL)2:*I?O8'9]J
MXW\V0KD\.FFNL5YS9X?JA^"_OF'463$>;UZ %_L^^CT!Z^RR+O%J>)=B,3U7
M0BD9R*\.88S,$+B*\+!M%K?+\U/F,,<+#?1I$-]7PK0D)Z8>]+IL"U2WU'2O
M@T>.K _O\^*6RDV7=B06SS0+PTHI*7LJW:_EZ@O()LP]N-P'UE$NAI6K7'9O
MAEY0&X6D'$V)>G4TH]Y/=&D1E+$U#&[?I=,#B_J:HG4^<'26SHL17N$C6'&N
MC!?]=5V(FXGMH1S?4:EC]>P"#KE4+\_@'NX](@Q@/I8V_ZM0HCF.*C<!MBGN
M:#DG,)RQM%S5UJ5UJZJY!>Q<;GG8ZBB'-76>,Y-KOCMZ5\G"XQM"<@?/%,+?
M-53WVHI0:42D7Y90^(N5XHHK.B2RLS_K5G29Y<+D$%BH6:7QCE7>;]6@+Y-Q
MU OV!YL\$JT_"8G#R*(!]\C!N!H26J,&UXG(-4;2+'S,]!,2\W#R8ZTB%Y#U
M)B>S(%(Y]@U_.O6L<U0^OE1%!=^K)G>T#:8=1N'.$[-'S6;>.'3T=&TH,'-,
MP1$E\M,.;0!'*4TE-OWE-QN[<I@@9H@T+NR<;OMB])[#>!+03VWT</9,$0RL
M[0=Q_(3$!P_,$#T$[!="254?\ @Y3_CK-P7>W:RZ0G(.K/5M]?[AHEW*'"EY
M$<?[+ VSV#_H>>0%6D"L2IGJ1ETRI?^DU"%(ZQ]:>5,0\_1(; OT))O06G"M
M:DUT0IZD7$+@OF4)N_C(9#OGC'HRNZN88"3@,:<72/Q<.:4Z".3YTE !PO67
M?CYP,-&QI^.,ZVZ7&_8?=:LL-87"BQF8 F$^B6;#5/,:X:\[=EE.NM]E=GCO
M;,-=?]-JCH >[MJX#G$7F]SH==),[FN2GC%Q6/@'L0+ER%<H/BK&OF/;FJ=K
MN$M"64TEZ3G!U*+F1H0\AJ]-4W8OA=,:/>+87>!\2\3:?"Q^W$"(\L.>>N29
MQ?.]_J>_W1V]3-4T4RI;-!VX\93L.\> '[4PAH\S-<9 7\S](C ?HMB+,M#K
MYA80<^E?#9C\:>FP1"9;8RW(0,6UB#DZL'!M(M46.P3='K%RF?LA+%T[2BO%
M6I#X$K*;5 UM36$185:/LWNADDZ^3%:4/B0L%P!QWK<PZ"C38U#I3-CX/>48
M2(]ZVZ 7I!<J2*&%BS::FF*$!<G@SS>^Z[@)DP<D@IX%LF7/]G+U0N7*W(]8
MRC#G*U$Z#2S?>"5! >9SQ&2XZU*TE/H]O2R]4%GJ\L*750W%*BVFCEUR:@/A
MJ/RM14;M%4 NK['09L90*7HPAEOK"$-=&"[[6]2CR%^LZ!DU1N+& */(82Y,
M(PD.!B"+A@C2!%LH-R478XG9+S2RVK'51[K'Z;!^-B#Y.L4S'V@V8):HBP3V
M;Q2;KZ;PB"D\CTAUJ25$QCT/1VF9*Z## !XI3T [0P\=*3 "<P+2K8W:6C#)
MO9!\Q9C<&&?5HL#(NN^;<<>^5E?7-Y\)_"#X]X<':89%71?S'W!?[49_GGW>
M^,<)MO!C^(YDD&<)DA-3Q%-SRK#Z&)"D)O:3;)82QN7MJ"X(*;3'!(<.4HH\
M[V>9=!D\A26L'2?(9=%@("CW?X?E0Y7XSZ)\CW%*9'RF) [G,:C42!*)8F(P
MK[2V'6/,&/QPDQ4<-KS48.U@^]OA=_2AG>UOD^\T2GFNOOR)L*J_:T"_#[:'
MF_L<M.+L*1DI[RDHD,PD#3C/JIGT%R&Z7L_[!;Y850G;<R"Y2RR2W/P0@59S
M3K_BXGM?SY%+1I<GERX@C9'Q]%\-!H&]- ;!SRO)M/ ^89,5O!+G!0Z#^RM@
MF]P*<\,"$$O'?,7F%:,IQ\D\H4)3'R71PO=8>B_FDA]V;>IHO](Q]<^<",*.
M@G44QHL17UB4>7KG0K>3U'$<5PK MB/"'!)IQ.^S_ \"^]U0XBY+)UM1JR--
M %93CLW_2?(&"6J.>>,I)8Y_)2K0=%C2'P?;[M=>32LC.8@=)D!)RI-K['->
M:V[@<9+(&DI[*N *:9PX.LE=1Q]-62:V7:57F:O.HHS2,)'KL!_;%+;Y I74
M[S::+[WFS<J2&0@;X_+4E3D,G&;4$J\YOL 57^>2/9ZD@C,=42O3F^RZ*(NF
M(I;4)>A!Q,_-)A-7+P+[E,TK_W*W*7P_*@(Z9AP/ 7Z0 ]_?=QDJ!RP]\_4U
M%/G)T%2JF+ R#=I.8#>8W*(&N45 +/!)#:U3SE>YN1F!X+._(1Z[$TC@KK9E
M!GW.>N ,M8QCYBH_:5T782J#UUD;>\>J<#C84-?230%T5N/;>,$C[L4Z=$#W
MGZ?EZE\O\"X-/^0$29V4UVG-KA#K%BL_MD*6RR:43MT:56%=G\VW^F;K+'.T
MLA\B=LO(_BIE.F8K@KZH;BD\OW+SN+@EHQ-N^GB 8F9.>:1&N$VIXBYCP =/
MAI#-TNVRW3N>SF'09=&L4_HG=J&0>D0EKJ=J!EB-[FX@PQ3V@XM,2P-^"+K8
MN\%H\]-PT8:IW9#U)K+?V>YAJ"^B9SUS<U-GLSKYT[<.,@!L_+UMA^)Z"GD,
M%$'+DC_)&6.N0&8Q"2Y'@O975<I4S/2V0@UGWY&.XCWEG;O2Y"/M[IJN^U%>
M1-=@\\&A2E/G55"A"DCG#!:#+3E7U FO3:A]TZ<J%WJF0N\+PAA2_\:"_M>U
MJT[ =J\9!*F$^)-TC%FCF+V66 J+;(<QNRV^49S9>>D^AY X?Z'_T8RO&4M?
M!1>_VK:N@%B$AHEK]9FI!]Q8^<$//3Q@^C[L^@S-NNNIQ7N08X*=PQ,$1B^#
M ^EO"TP<\]1JK$#7:0@;.)UQMA*)\+X<^^"#PQ'JHG$Q]763\8<R>A!(9I41
M&I!DER5+OG#'$EACB75"=]XL$'@AY*]L0,+3;U#A-8LR-]FN%+;B48-=9Q;V
M#DTJ?= H?;S/L.J1U!R,^]LJ;E>PLH+.P8)91_5!%EW+[\$YCE..T6#(AKU<
M:N2>!X#U(,QB:_+=HDD"%$SX:329%;<L2FQ&TDC6O +PBA8/E5)@<'?H)FMP
M<\V1*ZVEKCH:A+0:F'</<S:9Q /0VRG+NV&":*V2?] 6N;Q@IK<5J_GD=BLZ
M8T"O->Q]&JA!M-Z_60Y='SVNI49& HES8)L-.BJNO"^HHK, C&2DS.IAE^ZN
M0Z::?9@&V@C33^5XQ0CP'6PHM^566AH^4(_%I15I2")!CI%7@J(!EC>R>T1&
MEU*UVXKQ?055&[_Z3H0:A6<T\(A(@"8DM6%\;'BWJ?VBSE+X5\(=HZ(Y/I<[
MXS5LI@OS"-X_A&V&E93 'X%PF#/4P#3)%0B$+W2!6$>183$AB"&<O))X!?!T
ME!P67 E?6W-SPNR$#OZQ.\$];.Q6< '>?1M!!81ED+,S-:V\2UGN=HF;AN$R
M<J: C4R\+K(QH0JE"W;0312I&Y(VV]1=T8BH^&:!S"&#-R ,<)XU<U)"=Q1W
MQ>Q$U;F?4E+2:J9)#KO.$PV9LN%,)#G.\P4G.>G1=CJDI8@2AS,+2)#0$K^.
M%_)DTQX!^2+RE510K'@=-;5 4!+28BX6W4,I7JA\)!%E"SB/,BS0BK-R$54%
MZU'B0@$K:4ZI$Z?<^!NHPU-Q);"* :T7V.9>J%ZJ4(UOR"@%H4'#9JGNT]QB
MID$OF@3"7=8C4%^P]# LQI"^M(T>K$H'>\CP+E9B.&%A*&HI2@TG,RJJR7KB
M_I<M2RWZH(Y+#LNOB.,HF0E-$MC5*9I(^'GV6'H"V5Z6'BE+W!:; L7HY*?E
MO.*B\C'WU"+4/.8YV4E<.')(1L$HZ,#>DA1]OEE*\*T_M2R&)[&!9CGG>/=-
M4;O*3U7IN#;8O!#[[1[N?Z.+Z]UHC[+$]<&87SWC*!T]#A,VKL<4W@]SXE-R
MIY@W#IWCQ0<%+%K<!,F0KAG=BM4R$%N]P934R &*A?YS;O/KQJ:T$Y]\D=8\
MDA0LM&#Q6.'N;._J4KAXT8]2SV1A<#\G5(DRS8:$H!'8RNP.IC8SH28;CZ*Z
MO32_YJZN%#4U[&?SH:8;*'^3Y [8IB>5MR;6\BK$EP@YG?+K%-<, V*F:1P7
M[/(LX]J'VYRK_X2T"F<XP]U%<N-4ND)C]35\$#F/!W[384,935@@#1^W5%:>
MT4GP?<JC,_E#XF7*1+E\D(LBZCSZ83H"2;UORDT^TR!FYY+!D>1SHN%H#'J.
MRFR8$DL;K-<7D%8)LB*U]*&^+CABZQ2)L@9L8F*.R"OG<$B)5X,3912"$3Y"
M=(>D;S:6\>.%P8'%(6<AA'$(,5 !.(?=IOOCBG<*=\)H(N413(:$8J:E\=PE
M>"VQZ>$=LW5KMG.6O4]GV;0HQCQ<C( J$&AEW#,HO"9*/ANJ77-LRJ#'IOR%
MV)3/ESUZNT0EPYP\@B]VF>TF9[8IS+])<2,1H :,@=<$-,9T 'J>#.?TZ%^D
M@T($0<6PYV&9L%EBL'(."L>7D1"C([0>>3;76T52GK,8%DRJ=*?A9;HR%IB\
M82#Y,(7US(IR<TC,S@G;6PQ/8.)^)"2JE60UIFSVYFU1(M?R79X@9PD87A4M
M?0-F\^8$N4C&\G6B#*VD@@/6 VY\_/4UID_@UJ2P)"QMBODAJF!EZUP""5PB
M4DV%.TSQ^%M@,%1@3J'U7M7$B*6DD(0/S*I:;@&6(Y(8#R=6F2'\'@F-P]>&
M6EV^HE^(]=-%:7'Z2LU+#9K ;,G*"B^0FMZ.DZ1?X^ 0@:&EN6D^35R-7%(R
MDQ5N 1D=F&ORUH'E13.D*A6;IZ3;'6O3DKD!7JI),_% VZ#1$*",7]GTI3:\
M(]&\&+,EKC, @PTA6,2?55*1 24%'0NY+H'B'MK%R'8%X@!ZX*AL-6$K=<NR
M303R]D3I,36E)6XQ$!J/)<65</4/6)?!)1%%290XL+/4TX8"4IZA,6H6U]@U
MV4&9QVYM6^U)<"P6!6L1V!W]* SJQU!V=<$0R&*1.= IF!("2JMK1Z-T47-]
MR%OFQJ!/:EK5\(99DD3*+%$>EX>A!1N.QHO-GEH-B$H)[[)RO(F,>W?,EI91
MOP^LIX!E0^OW\4-  ]NK=I'MHLWYQ]*&QR!@_R.VGF3TGG;$<+-Y-$S+'?1D
M]98?EAH=.+EEZ3'IY:E">X5D[EZIB3LQON:B(I,M;;',PS8B61P7]P0F++ZP
MI6E(%R %$2UFFSS.V)-8P426J4BQ/P5R[16FJ,1?@5O1B05KKOCV@QCSSIO4
MP,Z?"CD7#)NB<!SE:?Z(7BXK:9<_&<3FL]9H5D1*;96FU%@04?68(G*5%$J*
MW<(*A#C^$EA(O&6ML>0.E!.'0AKN,&00-F#-+9YG7!:M$D;Z>?8DD3,.J_#,
M0X3INI!<QCA+8JL:O0:"<S4OI"(-_?H;87PG[<X$BW@YNDO<-61AJC$!C>@P
M7<D!,W!R!Y'0<$FJ-E7GZH6Q3Z$@#%/>J1LJ1+)D21H2S0NI_>0X!H?-GLQ$
MKB5_$E(ZXKJ_)S\N?K:1'--(CIY.L8[[^$R#V>5RR,./6!;N6\5&U)(T487D
MDQ_^GSN[@ZU]L-#!7RCROV+K_G-GL+VU]]$C^+@M^\_!P<[6X!F6 :ZN!2M=
MA$V7A$K$"Q-5%T;N_E2H\)/?,3C>&GSS5VP4O'CW8U[\41LT./J8EZM:)"Q@
MDX;;A&6EV8P:]&*I-FE=U^N#ZA?,_>/N&D/"G*>EPSQKW0-BZ?$.IH@?^0-@
M+C(($YR\8L',Q LPGJ;:2,HP;$L#*>&PS/"V1=)B.Y""2B.:G.LT&)3);, \
M9D/,5Z8PE;Q]D_+-PC=.!79Q*H4%RH-:<3L/U3<, Z#.00Q$1TN2XBX*.!<S
MW#7>YD81'*60$8Y+- >=8Z9_I?)5\;U6+SC%O2,*D!MCAPHP[&PQ0EH3#TU
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
M792@)+YN]/MHP%4AD,:?$<5';S,*>? @&KYM'D](\QN@AJ0J% JP=(N!+G+
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
MI"HF8BU^&(07:?Q'F_Y3:2FV3EQHUQVGOD'>"ECQ_\%TOQ'Z;QN6Y0QWWSG
MYJ^OA'@+R>"U5[P]K:P',<E24".9Y>5\ V)YQ1)A3!J3,'Z>!1-0?76H?TU+
M-=%2OZ"E57 934N:EEY#2W@&(6EIM:W3R[09S.N7.W_\#=-VH@D:HW'R\W^,
MQXQ-IV^LXRI3DPB[OA$O;5VMO<_S7849/KNW52PTVMLZ9D3-B\RVM1KFV&EF
M>]^'#7&C>O:B3CY[8ZFMV:S1;-;NVZ;K=32;:3;3;+8O-O,\Q^Q;UDDPV<LL
MQR,Q$(>$(9"CNOV\H^.AY4CCYZ?W\G3F=S9[>1[>NA3&!7K=$]Y[OO?V<\&@
M.E=E_Z9"U_5,IVN?A*EPSO;XJ=*G:WEFU]+TJ>FSF?39<3S3LDXCGG%2KM:
M@X;D^9K;.\WN2+#-I$O+,GMVE0A 8Z7C.0G!AM*49[J=*J).TU0#:.I-4Z?J
MHSG;[#I5LA.>FV[#M>S+S""KN?KWJP#"+@4\FV0;5LNGJ,_Q[K7-MN?4:3A6
MF]&A9;#V>EX@K4Z)\EVG9UIN=P\R77.&YHQCYHR.VS9[;J5@UVEQQDE%(GY-
M$!.7(V\<P"\\M+3O.&;?WI03^D*:;AAI:I?RN,G1=<W.6B]538Z:' ^C\1T'
M;.$JE3S-),?SR!SXG'?N$5!ZZ:Z97*=LZI_MQ/7NZ]T_Y]VOX,4U.*#]A:7,
M3[#- 8'2?&=AO$#XF=,\ZNM89K==Q6O3EO"16L)O051ML[O6C4$3E2:JG1)=
MP(/J'!51G<D)\"T+PX"@OB>B=0)\:M()\/Z)TW8LT^U4BC8U+CM0V_(G2)]6
MV^R<2*&@IL_3HT^K:YO6B8 RG)8W_"MOXL[[+4WF041HMP@Q?9)6I@=&9KM*
MLE9CQ>$Y2;UFTE2_9[IMG:*O::I..=4Q>[VCHJDS<8;?K!SIV"P\L^UJ_^-L
MI.;Q46?7U=2IJ;.1U-EQ*B4.-8XV*WC&G4YC-3TO?(K74H0:6+YWZ.0WMV<Z
M[1V2W[:GNS<R.4Z[3Z=-SIV^V6WOI:Y)D[,FY[<F9Z?;-CO=\Y'.YY:ZS#NO
MG9?%['7-;J5>!\TSFK5#=V:  5;;-3V[5B2T9@IB3=EG1MD]V^SV:SWD;R9A
MGU15\^<,?A!&A&E$;-<\^*.%)[*M2A'BIL(3::_NV&G2-KUV)6FJ25*3Y)YB
M"6:WMX_ 6,-5^;$'"S[RYNQW;!HG:JOVW0\SCBMLT/=,SZD5JJVQLE0[5\='
MGE;;,[OU1@8T?6KZK,^_[YI.MY+Z;QQYGI0+_S%7Z#))X2R-4\LQW6K:O:G6
MJ7:8CITF[;;9=;03KVFR233IFIWV/L!)&Z[-C]V+_\2R)P_[7[%W#NS=)%YB
ML<).F2W'U>OUN25H>#-8UW1JB >_9MZ-53*G[#UJ-CYM-NZ9_?[NVE>SL69C
MS<:'8V.W;?:[E=H%'A\;DWG]M\R'4>;?TS^5X81!Q"YGC'C/LMOO]S2>I]Y(
M*Q)$P-O9SPY2P=L/H<2V':^>,7R=,6,:AR"Z,-V7ML'  F/X,LEF1KQ,C(2E
MRQ"^B:>R8"F.4L.'_QGP<0PKXM\SI7\3WFID\%SX-8@GJ9'.XH?HYY=/='U:
MRM6E56C#(J@[@Y_5QT5Q,O?#$E-;;<["?*IC%H;BU[]?M"_H,PQS+#]O6,JO
MP9REQB?V8'R)Y_Z:J'\()MD,_H1Y"&X$1@O]1<I^EG_\LLI>%[F#F4<'^A?;
MW4_^"K?__I>+-;D@7F\_\5NUGP[UQ.?=[SW&AK;+0>^U_.:]/#+D-2DRA/S-
MDEUG3I\>.%/>Q>$$GG 3I# SXW^8GQ@C8-])I=C+R6W^(<*"ZRM1+3=V;[1R
MS<9L?L<2OH*V9QJD.^VV5:7TZ,V7Z)Q"S,=&2_V"EJK4_&A:TK0D:<EI%[2T
M"17]/$X2OCS5Q?64,E; QF_56I"ROEF[S+.N_7Q_Z)T\JMC;"55<-8.^#UNE
MI8E?$[\F_E/-;1R6&\\_UY]M'VB?Q\3?)S _O9>G,[^SV<OS\!NE,%XD\60Y
MSJ10/K0=\@:GO9V6+LLY:@8],8+L]%H:SU839(,(LM_2E6&-4]B[HM4WYXR[
MOJA!M9A!4TL?SL").$DBK-*25Q.A)L):B7#W_-4&$>&9-*#AL/3C<EAT'^"^
MQV5_NFXU#[WJ*C16UIZOPW1:! T.E29H3="G0]#N?CROYA'T2440?DWB-,6V
M[_=!]$:6_QO(UDZK2B)I8T7DJ4O"9E*1V]94I*FH!CNOBEILN'8[]I/NSVMM
MWW;-/#I?,_:$)ZYW7^_^.>]^!5>GP:'5+RQE?C*>&7XT,2;L.POCQ9Q%6SIB
M'*&M854[=](6J[9852JR6U5*>C45:2HJ4]%1><]G<KQXR\(0W1Y4@7,_^<;0
M"3JTW?<&U-AO62>1OG;.]OB)$:1N5*()LD$$Z9T(09Z6S_HKBUCBAZ2O_<D\
MB((TP\CE]RHY0<VDO.YQ&8K:W6@B$7G:9]5$M.MTJM6X-%S3';W+>M BER.S
MXMK5W-RCR\'27H>F9TW/FIXU/3>3GBLXX9U.8RT07I,3K^4,G4TIF=/3!8WG
M)%6;284=:R\E,YH*-16^A@JKI84WE@K/+>&W>HO%XS(U>_K$^\3%YW'1XZD
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
M\Z7P7[QGYXW*HR'SGIK*T4'F/8]740LP4*M]8%B@=JMW,%0@JV.UNH?$OL'
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
M;+T,2YSQE1S/_.2>^A3'XX!VZ"'(9G 5=JQ-EN.,8RX(,(/1[Z.!@I\ >BF
M68]EAV-.!'/8OB7^*\KPOC%X*(B\,&% 9;1 ^6NI+ED9< 66/@O+>@_FZ($L
M:TQ\5_-3W]:R5BFD\T9J8.^6=CVFP(Z6MEN N1S<TMX1.*$$+[-N]Y;6NR8+
MBL2^?+RRE%L?WWO5XS&,^WX#N$RC^.19<XD6:6V9FV*\F ;(TBSP0WAJ/)VF
M+#/N'@W0H?"JC"L]4'>5U>SK-2L?8LR-J'P%_$R@& 49P= F<%$%NVOS7JSH
M%"*[-<+=9)-L6/]-:\\OF\!JR4UZ>KN))!SW?=G*Z.&CD QVMCW>DCTV!QX1
M(BF8_/TB'5Q95VVW/[AQ[:X[Z@P'_:XS<JW^M3?LC=P;0C#Q7^TJU3)V^EBN
M6?DM^-<RF""\%]+VT%^@,C>^L#1>)F.65ML)]XUV8I!5UTZU1DPQ+H-89<!.
MT3A8( _P]4/6"/,E?@#Q:(S]=$:+37\@MMIW/^089C$:4B![=M#^3K\&]6\B
MHE.2768LF2NP;S2;=U:OU<ZU(L[#'X\1+Q#EPYC!9 0\UPY1J4ZW!NC EH%Z
M["%.ON&2CCEE;T".PWVCE3?&2Q#=48X1%Z+$+_\2!OY=$()D9"D\R=\!S>J=
MT[?J  ?TTYW6NG8NJ,7W?N>TV\U;G-U</R3(9DM3<(_F?K2<^F@",6+M20 F
M47"W1%.#Q%N,*A_1%I-X>3^#W8ZR!*Y7;TRDF10DDTNTQ!Z-,+Z'!P7CE%O1
M8"6D+0->=\?" "P?O!9N6L"//O#F/5@ZJ;'DF([^Y+M/V6XIA^L'"X0\ 'CF
M@V1J1431JU-8IF :C.%&8QJR'P'Q+ )8&NEX!E8+"5DQ&2G%8 ;^/7Z/#XO(
M>@EA;"&,] K_]%.R"F$5P*8,QH@O.2Y$ 0PT3&.@V"B8PY+2T$F^1XRANXFF
M%_L!.Y)2=&TP1C<4'A@^<L4A9P(N3C2A4:3&/=A="5FQ(3Q4&%YS6"$@EH3K
MZRR.<2XFC8_-0*5C% C6F Q3&%AAN2X6X*.3?9R"<IIF#[[88^18V."$/J Z
M6G"(SX_<^"R!]^T4DMB#M&D*:^_FL]<:E\%E 7)$0LJ,=X[;<OACA3 UX3N[
MU2E]1Z,'TT'Q=E5GVT3711(H$#%2*#)ZVG2!AOH?Y!?X'_>/Q($3D#?@:)$]
M 'RPG#-5IG&XV5SDQ4*0)0P\.S0!P-^<HW0KR2=5OL 3A'PCP>@CGX(EQ1DJ
MA2>#@90!.Y,S1%R_67R"G+J-EXBF&QE#X':?QO&['_J/:>#+@18#@E]-D#_
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
M Z!EH;Q6V4QN6&(60<0)4=E$F7@GR( K Q[D%<7\Q#GB=#9E[)OZDB?&OKH
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
M$S_O8X1 $''RJ"W)-3;T"C:\'EG7'6\T\CK77A?9T;%[0J.-;D;=M7!+OJS
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
M54([4YN/P&OAU38@[,W#1:&8,!A!&$$X0A"BUH>#K6$,2DNP)=8[8&C=:,A
MJ@C9"H2].7,(%A,(]^)D'KB6>B#*J+I:AD?_=UH=NJ"4IM-_W<S*^2.SQ2I=
M_#$K4U33HLCN9^V/Q41Z"O@VF@9P5'8%$AXS3(CA6C'3!)U1T$D[30-*_)U<
M_'6Y/*_*9[+\TVR:%1^7\_/-C=]I2!I.^#AZ?46'P\A;!:S1MM$I &/JI :&
M0.:=,!R4Q;9K42<@4P\T2=\2;?V%6<6$DGT.51TL&E\C72^B=>]HY6UC+:TQ
M\$KAJL!-.DD,!;5LU,;S3FGIUFCM35N%:,+P/EMI#5QG/?@^F>MN'].[,<A#
M:IAW /D$9>.\MIE>.=68>\R!UH(X#G$]XMA 29CK)&%^&_,[]<]R, %B=UTP
M#G[H<?0K14:P!2/8Z*HI@$, ,.,11]Y+HA6L^TH8PH5B+V($_?F(,9] RB(C
MB(P@,H(>&0$6;8S(6:DI$=!"*)%R1D+6>,B8!NY%C* _/S4M^V+ML]'?@3&"
M43FY_YHOBZ+,M[B8K8[6C0T!;<6UU8(A225UFDM(N7*P201&+JC+]U%:[>#[
M:@-WJ:A3@B<2\>BM'I? '*W<XZW<<UI1J[FA3' I@72$\UH!9H*ISOR7[R.J
M/XV7T@E!._!Q#4Q>[0=NSUA[Q.*>L2AY6^:"@%#0"D81M9QXK FL\Y2PTD(]
M#XL])D?@8'WNH*W[P+!X'&F\)]=9GJ["39/LRW6V*++BEY=VN!BQ<7VT"X_4
MC]0_9NJ/RI'P(2NR-)]>5D,$SK-/V7QY7;:T/5ZG MP8@:F]]<'X,=A))"
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
M"'@+++/*(=-,/3"&=+)EGLI2'O)TO8REQ#X?D:5$EC)4EK+1,TAKH;%4R *
MK04.2=7DQUL.U-8LY2&?U$M8"OQ9]%J?/3B6LHW?:;A6CIW-;U;9^9XXR" 9
MQ0'Q ]FJ&))@"ZV'2C"IH8*$XF:&M752=-K:WN<'->'W8+>@GR4?PS28(_!A
M1< /"_ 2M@H YX AQA6S$"J)B(=:-ND]DI/.F.RG [Y_JP)$P$? 1\!O ?B-
MADQ >J&<4X02H(CB!"K>C" UU/'M =^_SL]' ?@CR2N^N3K+\G+26Q5F+I*;
MHAKVUD:>D[#@Z<U\77;YTC#TT;I8QKSP2/U(_6.F_KB<0-\)=1_!G-V@$+5=
MA3CQ%!$*B32.2PBA4TWDQH!@@MU7NOZ1E8^:G:NP*^D?V5JVGEQ4JE1Q<K,J
M5NFB7/:3@\1KF;Q= 9B8@.AJ.03V<2S PAL-!$0P8)@W7!$-@,>:X3K+ A(-
M7<=]\5)@=9P:+P$6G[!>ZP(BL"*P7@0LVG8&T 02!"'5S"$''&>"U4.VH.2J
M.]_NI<#J. ]>""P81\4?3E+D=\.%Q]S["H&-/K*8@ !$KP#4G!DNM("D@20A
MLI-1^ U(UIO=0>;NU4B.QQW#C\;[L:)4MH)36J*-)=(YQ+6A%DH)ZPBZ=JJ;
M4?-RE/:JDXH)(^.>2A)1>J0HA;!MO%-VP7).4D2588@PJ60M2T%0>$UGANS+
M4=JK@AMD*1UW]^9*\_W+*CV;9\WK?5Q[8S'SV2+[Z;*BZR\0@3_?.<G5W/:-
MY4ZSLNMG'PO^F&5).ITNK\(7OX;;)>^6JZQ(5LO$+!=5)Z0TG*C$SQ;I8CI+
MY\G'57CA*MR_>/I2=O+D#V]G\_+]9^H^PIOO/W,/3TC(O9-4_;S,FXM<!^C^
M=)9GZ3]_2B_"(_V2SC^G7XMPJ[]<YO5JTHIM%)@PY05B7@M$"=<*2<,E5I1"
M)0VSY7?2.]OPO+6ESUE8<IF7'.-/!>2.$\,8AI12)XC0$AO  X]3F(5_M]FT
MTQ)C9=RV[(Y[YYBE=_?Q.\3>QP&L_OR\OL?9<GX>+C'[<*)/3A-S\N']R0=U
M^O;DW:M"Y($G-"?O/I[\]M:J4V>3CZ?A/W]S[TX_)B<^//7?WG]P_]N]^_CV
M[RYY^R[\[8;V^#_,%LGJ<GE3!+%6_#A(_O.B9]CX_AW%!C3<?[8(6MGZ[\T;
M+$K9/+\K,<!:TZE$5C+-YO/ZW2K-I?P[//BT^?N!=9_.KH(<>)=]3CXLK]*.
M*GB5YG_,%NO'2V]6R^:%M699O?)Y=KZZ_$7*GPDD@"'ZYZ8!0Y#I\_2ZR'YI
M?OGUOB1_<^MFNE41(7KS;2_4^E8,__G7-QT58_T>_,Y;8+NO#?]F\DG?>MRK
M]Y OF8'!^N^>9'*4$S>_KX3NL^=GAR6(YZY=/,PR_:Q4X9/_SM(\<8%[/.35
MW.X ##?WJY^LCAV0_QE[L;,#8;-I5EJ+ZTT*IEM2";+2O7KDH;1X(JH3(=L3
M(>*)B"?B5PS:$\%?(CX./J?X);V*MUGC-S>L/GB5HK__CM7[+E3>;K5[\N8*
MA#C*^,84@R-J43S,\QE#+9$W1=[4\J:-"0]'U)5XF.<S\J;(FR)ONN5- H)C
M;$0\S/.Y?=KG0UC%;+"&W,DJO)&40>\\N\P6Q>S3[5#R'^;A,/T8NQ*/?GV1
MEN-9W]'0LF=7&QVVKZV<A!RNF4QO\CQ;3+\FJSQ=%.N*_20]_Y^;8O5 (M)Q
M)!?^\(A>)=K6OYQQ A0&WFEM@;9&R'6UI[9( Z'NZU65=#2;PG&M9ODU.4Q-
MC=.2&.N;J\7Y:4L:=4N90,23B]/TR_ME7KVQ6N6SLYLJ)>%T^3X-EWGYK-PB
M/%)X[?N]>B9D/[G^7:"\Y,CTA:4?AVYO[M?./FK&($';78\;0#TRVE!(B;54
M*J)JQA#^YSNU :_-&)[G;'H*8Z 3(?<RUSXRAL'K5J/G#(\P!M0R!A? 3X$T
M@EFMG!#(D;H-KY5>F\X<X-=F#+UY>N!$RG&/']C.ES-P0^%FD6?AJO_.SI,_
MTMFB6'MQLN+')!SS:5I<)B4322ZS\S^R8I(LPE>6%\DJ_7*$Q?4UVDEK'T
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
MU54YM&=022S'Y>F.^!\G_A]5"BBY90#..HT$]9(8(93E1HHU ] 284G0X3"
M73O<\(3BO;19B>K# ;&/F-1PA N/U(_4/T[5@<'6=N!&E!,. .04>FL(LH[4
M[D0,M7E-VR&*^_[%_8AZ&54M^:H,F=N>?,E\67RCB"WFR8QG?3%X-Y[U'7;P
M;DN?S&"=16,Z4)$Y'/SZ#ILY/$D7Y[#MZXX\4!I1I;D)KW/)C*SG5T#MA.G,
MY?E64^)RH&"52QYT\_?+O+RM6@7M^^QFE9[-L]/E^S3/>O39]=TF^2EU:6S"
M">A1LS\4!3ZB?A2HQRWJC=9$<Z*@(<HCCBAKHG>0 H@ZS<YWA?J(SGV9UX>=
MYF-G>39=+?/B/\,1N<CRO-\ZE3$['8]VX='7'JD_3E_[8X)>M)W>I#6(>&&=
M] 1#(BAQ39=4@A@7=USM3TG;O>7$MN;#NTCBVW5$GNUE$/%@/2Y'@?O(]8]P
MX9'ZD?I'*?,%:64^! )QI[WVU'%.B.6\EOG0<<3<GF1^E-/#;1C1NX%NUM[8
M,AX>MC2<EK+A:YI,+]/%'UDR6R3I=%HF7H2'2J[SV6(ZNYYG29Y5'MRR;"<]
M7U8]A,OOJ8\F88#%H/K8UQ?C9N-9WV%[T&-0/1ZHO2MM$K5]OFQ0VIC!4 *F
M!>$L*'1-"V K/'3W(S*MP'65O#VY>)=]5K="]GTC8]\NUB74)Q>JEK /#&T4
MPYG##2>@URA.1&@4WU%\1VX;N"UK6S!#!"@62$%*PO^=\*)I: $H 1KMFMM&
M1GE<\>MUFXH\N[[)@TE<9$<R]>2QE!2YT>C4.^P5IBJ\):E%0?W1ZT0T[1%"
M$#S8Z/3#[8Z>J\5Y4$IF^4-34)[BHWI!<P@N9:SWB"[HL;N@'T6S%!MH5E0;
MKH1EG &EJ76P1C/F1C\\X^!1-/?:9W$7PTOV,JDH\H'(!P;,!W# 8SOK!&.F
M2=DHQEKDC2&(N)H/ &-,)]'T%?C KI--B)Q(&0M"(V.(&0J1^I'ZD?K'J13P
MMIVLEU182B 6$&JKO-9RW;E=.TL9[M2<]:$4]"#(*9@ T*?+[> %^8@26-YE
MJV16U30-(NWD;)F?9WGS&7C])2F6\]EY\B=0_3-@!CXF/KV?N%:D=:1UI/60
M]*]MUOH\RKY.#!1#RMNAT]Y!9B7%6G/"K!*D#K@8)+61\KX6%B1D6_3;E_-E
M9WDD@O?M==F6OC'1)#+IR*0CDWXZDY:L-96-]Y!J#JB6 "G%$/=K4]DP;UTG
M+?!I3#KRUYB?LO&%ZJ_/676SL^7\/%Q!I_-T,<V2=)78;%H)Y35HD9PDY3EZ
M;==>?5S*3PP4QF@C#*8@(!YB+)Q30%'($6EF%7+O>2>Y92,VO<Y@64_T[25U
M=T<34A"?<+&7^/=VI']M-6S,CNW^Y?1.:;\EZO]C%U0_;!:'6W-28H,QD18
MJA1%/O YU!0P$,@ZYF3%@,H.SEE>K/G5SKG;UB/A>.1KD:]%OG8\?(VV%AB!
MTC@-E:3" 6@E#/K:;:D !1T+;$=\;==92D$EG7"^EREWD<]%/A?YW"#X'&_Y
M'"6:.6^AP8QY@#F3W-3ZFQ-4F3WQN9T%!##C$X B@XL,+C*X\3"XQ]+.D&S'
M#F%(H0MJG">*"L*@9$&OJSD<%^SAFI0=:'*OT;J<3#@9;G'*:X(F)JA'5GD4
MK/(13HDW!K0)K#F60B#"'.96.2- /=N5>8JV]N7UD82+Z02CO933#%.->[V<
MVQ>?PS*(5445EQ=E]_:K9?GMLC ^['V6)]G5]7SY-<OJ%Z_GZ6*;.OGAYL@_
MAL"- 0T":(DI=4X IX6@R.*Z&EYX  A^$('K(&&W_+UZ\Z1J1U&X+UD^G16=
M6&*9'"#[+J-]03@1"CZ&YA8Q86<,P"0;1H32 @-KE!+<<8@44Z1IJ&X#3)\(
MS*I8Y=5PN74@+$(R0G(8D&2DA233SCL@(0:L2HO#M)EQP('R#WLN7P.2NX[A
M\ DD?79,CA =34KSN%P* UM?I.5XUC=^T4E0*SJ1(LP@3RD2#@D$N#=-#9"S
M7#W<=*T7T=F3N!N%D3C #/,7'\6_9T75[']YD>3AUWPV+1O]-^Z>V>I(.B ^
MAL4-RQ) 13PE(FBRVBB(K&"J'MO!-;.=GJ3?=?E\N-WSZF/J<YJ?5X,Z_3*_
MR&:KFX>[(@[) T0P&_7TCV,.,HVY$\ICD*=M(Q3*'2+:4H"-@9 ISR2NQ2]&
M1CW<".4;XG<HB-\ZL!/!'L%^<&!_+/^$\(U9G%QH%]1OPSGUWCHB=8-VYJ37
M0T5[+VZKIR2I[(4%;)6@$G-0ANE0&?,F'.W"(_4C]<>I+3RB+%#<F@:6:$&\
MHQY!P[#P!@O?!+4HX@^7'>U"6=A&M?]WEB_/T^*RI+1 $/TZ:MW^@#.RJO/P
MTUG95+/,R+H=ZCJ('HC#Y;\C6%^,68UG?>./6=&-,@ZJ,0=&>N8ETTA90"V[
M-:,)[?C)GS+ANG*:5VQP<[3UARR8Q<5LE7W,\D^S:;86J1^RZ?*/1765;[4<
M'F1V",(33L@8XF7'!.G(G@]^?9&6XUG?^$4MHZVHY1)#3:"VS$ G);=,@Z9M
M&<=&#$;41O$X\G22]0#-S[/5Y64V/T]6RW 2PJ*25?IE_>IR7CY D>3E0<HK
M;:M(;H*>U4T_^;1.37EMO]LP E1LLP4$,E1+"25A#B)I@.*BUJPA5ZI;]E<E
M=Y3H]LO\-/WRCY80X87J77T?Z$-(.GE2+"J.](P.Z=$[I!_E#K(M2:046P&4
M5583@@S25->53T B+&]S16?YV6KMCOY'S:Y/EZ:DV5T.\6&#4?\>$%XG#)XN
M[WFK?R^3!=55.6G[U=-7GL(X]M)A)O*-R#>&S#<X;/D&QU 900SR2@!H)',
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
M<B815-)Q0Z!E'DMD0#U'"W+DZ'W5;7,_P^_SK!JZLSA7&]NZ2U\,YA-(^\S
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
MBPZH,: *MSVAE<4!9(PR!BQ22$M(F@9"'F/7R:_I 57]M1*B?=JM$5,14R_
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
M5LR1Y+T'/OX>8U;[/O-LPVJN0D/0BK, WC&'V6<66@:D)H,.AO8]-))8N:K
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
MN'LI)P_:^@Y9(546PO^'O4 3-! ^J#?[B[M]]@,NOW\2>A9)D7M3/#VL]"W
M,LVG:P:^1V_R0P +)@%@'XP/%\4,>-T0<N@(+@.!BVC!Q1_!9027V\$%_2@&
M7+P'\22L>7>:3?_$/HZ+&8J49?7A/Z;3'/2N)^94#X:F3XWJ\0",V80B!E<\
M*]<HSS\&C&X\T8=!TU '];=#G,^=T'/;.3WH."1H#6+.W,,^SZC7-B AGF>G
MC,0)3T-0Q3W*A%;-[<CF22]Y R!3F9BP"\E#BH"T)FUV>[,1=\)(OSC%EDG[
M2:[]QX+XKGSKO?;[E#3PB3GJ$=&_UT?BCH6*B=8CG49I2MW0(VXHB!T$W/9T
M1ZV(IW'2"UVXBXK=66%G;RKF382PCX**C81J)%0CH?H!A,JF;8RF'U-"HECX
M 8M<VW7\F.L*(""4L>#>A.K.\E3[$BJ73 3OMW=[581J/]WRF:B0_]CV4VJG
M9,==>8>UPK[#6C&HH?N)4=)N8^T])W5MQZ6.B!)/4$J3(#(:$&A'9!LES<$&
MZEP_R:"=SV?2B5I_;D]7.E3WT9#4Q3P(:VU_0H0W(-8>K9#P F2!5X%8G= _
MW_<<RM,(@_X(25G(F2Z)39V0]GN;/A:Q>D+[8Q#+F_!!Y?81L4;$>A1B<;=!
MK-"A#A:["7F"#58][G-=V)L*+TC8T(C5$S(?B5BTGS;S#!'K=7@BXG[4VE:?
M$*QL5C\2,>]R? UZBL>"T7[+*H. D81%W$^)B%,O$@[7(<8TH8G=J\>]$Z-U
MY%X/K8.F4L"!I5'.^L65AE(@[P$31\MJ7[*A:W]4?X&HS$C+G+GG^"D+_(C$
ML6V'21J9 $\:)S3=3^I]$"H/*?\*9U!4'E%U1-4C057;Z91CMD44.5[H.<!O
MTR"./(VJ-D^%.""J#BE1TPEH R\:65^47=:DGO3R2 :WSQ[$O70L:.RT')<Y
M!)3@-" T]'CD^:%/':,..XYP]E2';T+DPYMP/=;/W3R@X^5HF>ZKXJT'\?T^
M@^ SQIU.7I@31K$C$E!Q0^Q/*X2N.!&%21"DPV/NH#9B?\*=IXU0>Y:!:"-:
MOP:T]MN84LH].TF$:[M!Q&V'BT XILU)8D=\>+0>U$(-#-GM%]YX=6C].NS;
MN]/-GXC*/;-8K><?BN40T5:F20(G=&/;L9W4Q2J+J:/=TR3Q4[>G-NQ,F-\S
M MZ\TR5(=D./R!W].<B@<5E'I]Z_9EO<TY&4#I/Y$3KA4Q.<!V[WB<F1W5;?
M2Q/L(><2FZ0QB7D<@*2DC9$LBIR>+K0O.=H5ROXX<D2?Q#7P@^%U)%8CL1J)
MU0:Q<MJ8V3#T0R8".R:$Q3%);!'$VG 3>Z1ON-F76.T*9W\,L:(G_J"FU2.%
MUU?E./E!NMI1$IUGI'GQ5M01#HMIG-+ Y]@LCCHN(X9Z),+OQ2]N4P\-"4^@
M>]DG8W3]:Q5.1H1_',+[G10;CW";>P&/*0V$[:0T%";%1GA.+]!B?X0?7KLA
M(\*/"#\B_/T1WB5M/#,1J1\D2>"X#@F<P'-H8!K=.Y&;].*9]T?XX34$[T4@
MO!3U_TO6[33?#S+V=F'H?OW3WA/R1374;*OH<+^>U.:![5'M]-Z[<NVM+<E_
M7U1FD&5VGK\_K?+LS_?9&2SI0S:_RJYKF.J_+BJ]F]N6>/<E9_=8KQQMADW[
MY&GB4><_O[$N*H3U_Z@3GKJ>%SM">*%KAX'OAUX8.D[L1833T+O_ >V>\+]E
M_5_970XQ<+%J,SRR'?=ZVZ'T"H<]\";EQ\W28<67S^'G;U;T^<MOG[\$WSY^
M_O3(-G<'7_&GS]^2K]:WS[#F3U\___(Q#KXEL95^_!1\BCX&OUA?O\$7OR:?
MOGVU9.]:^V?K;53JVLCO]M_=@2B-F7<#O^\N>AQ$L2"4NRGQ[-!FJ9/8@2YZ
M;/LI\;%]]RT5H.]\G=]!17;>]>V-!/9H"[!'#?G'E*"W'W)I7_)Z!609[20J
M.POYI&HSH#Z72]4TL<IU16PX%^SQ6I5_%=A;='Y]V.8@S+4[N1*@\L<Q=8D?
MA2+EU*8TU&WN_,3M5\,(8+FFC/K7?+JN9!_?Y"_50#BMRLNH;1#;+W$>R)ZH
M#XSGW+_#?#\8>[@.\X>^F]8]'OD^"V,_H4X(.$<(<8G0=^/8MM-K\G.HN]DG
M8F__N^F'ZPUU-X?OJ\-<UL98!0[W243].+9])PC=**$Z=%)XW ]ZA?\/=3W[
M1%X=Q?68\/JSIDF#I(=G8\>\IX+QVQOF]?6(^R/1 $S;[G<]DJVW<XTIJN61
M;"+1X@M"E>D:83JT=YJ*9++K1%&9'.JK<CV?J;;HISFV3>_@YH%Z\7S*K]K^
M[[]5Y0+^G,HVQ[5JR[-'<Y[0I6D8QC;VIG69%S"2"B.&1;Z7=!I^.()3)D1@
M)W[L^BD\YSB:.J41NZ,YSYWS#-B<Q]\I_#U$SI>/W]*<!_N9+E8@7@4SD,$
M4-K[L+YB9"LV@7FD^C)P*YZ/"^M_UHN\T].^[=N]:_566,)_K+=OTN!K^.:=
M5=0U7+!"]YW/_[Z<@<@)+P1??X?G/Y4GFE#!A.^)-U&?WB!GRA>U0K7W\#X2
M[NZ7'ZR/ER#!?E< C2W"/X$6:\H42 ;V/LQJ./3?LFO9V[M=CIKC[;=R"=CD
M4?_=R1O95@O09S%3XQ4+O8>OOZL_8*&67J/Z(O]KB:01CZB>EDNI.#<CJD=@
M4:H?D,[T>G\J%[14"ZKU8>':%^W::\F?SLL2#@O^J//J>S'-=>.OC17"W$5M
MP0IE9W)%:+!L@VQAO5A@=S @2 4.=)J?%XN%E/O1WF$9NFQ15_$'2>8+U(&+
MR^:MJP)FP&FP(?OFB!/Y(U(^ .]LIE0,_/&R6 &DJ]6:[FB9!G^YWEJ#0F?!
MS6HT@_!U6_A9,8.362FRF5FHJU2R(1H,BW4I%EM]FK -/ 92RT9.;?\TF'&E
MP42U;5>=GF; _N<E-D7#;F@#V! .UA\+D#+-3ZMU5EWC\7"-F(!Q!H00"#2$
M\O?$UDCT2P[P5DO@-H""2N'ZM,[_M5:42;_?@:L*?BL GN9Y72,T G16^;0\
M7\""Y+P9?*^/<EYDI\5<BI7Z-H#CZ8YT /(Y-K?3PI8T3*NWRE,XKDSII-,J
MEY=Q>FU=EO4*9L4ER\<,N]A< : =D(#N?#HXH'/+Z)60D\K1+&RPI:D,0F4#
M@""IEF:[=1<<0)"MX4(5:IY+E.H#D[6NL>EAL5#2K10)%$!F4G">8#<^B7$+
M;.TUS2ML$+BZEN(H-@A$OPGLM"IDQS$I8ZC=GUB2"L^ONU1X]V7[[RF=6/JB
M+4W1?,=^]\'ZEE7G.1YMETY.WFC4PJ^*&6(U' ,<T"*3F+BJLD5=R,VHIF,P
M>;:RT&8@+WD*STNF#<.@%",17S<[6^17S=F>6+_K9F8 >+=., '$GFHZ4=0M
M!<&CAQ.6_11;2B%YAY*MU-_8A!+4$+R9;+D$/JQN HE3N5ZA5(?BFFK3MLPJ
MM0A%PW92B)L(5[X?W6J[Q]U^JNH28'7KN8IO43BBH-R(E\!4*K5X!<<2A=Z7
M9^_Q7#I8N/W<!E:>;5IZ%!K\S;5/?*-FJ:]@(/T;]TZ8^6V[V?BW^]);M0)8
MI*$#J&UI96NWSB29F394;33%Z\+7!$]PGC="N;G9#96N'02'1$:2R01]_&*+
MOISBX2_+2E\&]NJL9I**23:'TP DK\H*W3^FE2>>^%+*T"?65Q Z/I4 D$Z#
MCI,W+?%31&:#YS1\"*;'9PQ3.^MB59=?XIHS.<*ZKC6(;/*_]5)=A5Q4L3F%
M HUVY8]E>4_?ZK*1IC]J,CB8,.T?3IAN2 2"]JVD7+RG-L".;N;Y+?L+[@\$
M7P"+>7%V;<A*9],(7-VGM1"+0];J+00!28LV7](,<R6G ,9;Y9? #)!&*AXE
M>\=JF[$&3M6;'J2_"EXNEO-<HO95/I_C?Z=SX&)JC1)(49C #_E?@#/XQ_FZ
M4-B$$K%B1Y)XP,_(23N4NR?FR@7<*.9V\7URMPR[^?@=0K%-[A1RXWRIM]JP
M?KWP2?L\=N,%^B(W"5=>&EJ_JDI#6B<@_,SPOF:;WZ,"L.Q\Q(:56RP*]XOM
M@^&<Y(P*2N"PVH/ZGVPA14<F=T7U.<&UK:M*853^/9NOLX:3:U*D[_Y.*K_=
M[_D(=-A@?0Z$?B_YR95(!P3DO#B=2YS[.^A>5P6"-IS39W@;\4QR\_G[WP&*
MOI9GJRN 18UP7;YD24V@[A)]!<8(K--L*:G;O_&<$4/E;TI@F8+P*[O'XITH
M'F0!R"I7307RP[D2.J4XAC*540PE&T/+:<NI'C,QW/DL!UY?+A'VRE-)#PJS
M>Q0\:KU[ZRT>SXXUUGJ16O/-VO>MC?<!Y5&2?W=$*(\D^@Z4_[AY?/6%-.QU
M\#LO),1LX#&,M8G)\ 4B['Q^QW6H57:E7;.F/:E *Y!VZ8B60G=(LMI>+-3)
MSDI "!2<4.N:KGIBF"71Y&;U7#9#OY-\/&?J 33U39J!%OJ_0$%SZU?9MUGN
MZX,5-\*>E58 WU=E]:?V\$<7B"T->^T\^64;>7>/OFVQ,@RDJ\=N$H*.+'B&
M0WZ70UYVACPF/.PA6HD4<;G)&C=YI62.L*VJ4&(-_@!',KWA1$ZL9!/)N]JG
M.HM-2T$VEPH[[GV+/$@51\M1R.&KEIUW!?[U4LY2KZ4H)*5W?;I*F9G!#2DA
MJC.PE"H ZO$SG-_&>"#2S3?<#$9%WB0.#1:?YD"A4!^56GD#.B\3B8T9^RYK
MF43A#F;) "B@O<7*P@8<RM+4&L$_+NI5M=XTILBCK!O1J:@,1N9S)5\CT$F!
MV-A1M'$C0VC"5O#OYV7Y9Q.6D4UE;W(E+"K2"W_/U6I T[V0/$$R5LTG]&\P
M; [\&"\1+6NXAWFS!R/=KZZ7RC#0WF/1;NI$&0M1:%7F"6.<0)@O)&/;,%)(
MK$" 5IBAIE/PUTC]17T+[=B')RM90DHO^].8VQEY:P^\AR3=8Y-W(MKA^>7S
M"\YD8W#F&)PY!F?^P.#,/=SM@\1X/BI(<R!1()7!&\6E-#[A?R>2)'=MN!NQ
M$5+4U8(",&\I-TB%5H9U:(< _- QO6HSM_02**$SG_4DLM\7Z%&S2N3>5P5P
M*VW)S6>3C;$T[]!:=&6,GGI%AI/4$R-[:-/V=;YJIYPH1K.W[U2"MO?S/A9]
M*<0V2N@^F0,]9K0'DHC[7K:X,7=(_BN3T%NSP'5=WXT%Y]2-/"%\1HGOVT$0
M"S=DX9LN.7U0T,T7N#H@#2JX3AEF_@%R2 3Z9 D#[1%RDPC7#WWN^JE#*?58
M$@N#FT[HB6[(C2T\W^/<YJ%/TBARA1_J%@)VXK HOC7DYLYY[A=RLP^Y[KR_
MD:Q%ME ?/W<G6*"'=;Y!+2A165 R^P5$V_E<_RJ3?_ SP,#4?-X!0M^ $M36
M)Z $7\K+K)>Y=IE5()6JY67K56F^4(EP\INK8K:Z^"#$"2>">>Y/IB+ M)S/
MLV6=?S!_]"22-TV&?J?(X,WY^VHB_M//YIGMGX33_G9W_O\!TP$'3W[:P;'9
M-M'Y4;F/3[%934ZL+ZW2M5\BV"/5\-T)$O?FO5WE: EJ6U;!XQ8@28$,KI!6
M*;5!&?X C'BV!N949_-\R\U1(T:;!]#(!8QQI:RHR+.02"/'K,KU^04PM_>X
M70SWK70P"6RL>44_A=[A^1S?DZ;. K,H3@&Q*YC:G'M1MZ$G,\7[I#/_#'1
M&58,)+Z<XY^PM,M"1G>9-7:"M^0R-0L SJV]:7,I.*R*U3Q7@4E%_2<.A3JT
MM<SJ>B+]  L=4&($@C.DX'7CFBEFN=(4-J0(934PT3LYBB'*L2<-C]HQC3KS
MKN7>M/]RH4Y<F@/^6K7^".F2@)%.)356TI*%(31H?\L6*WG-%5PK;L]<>2.B
ME-/INCK1+D\DFLK>(4&B<VJMO+,1P53E;<#(.4;^+*31<&X!D;XH5<S[1-DO
M-^)Y]3).K*\7Q7)I?)=P/+.Y\EWJ."-\TYPSOKN>G\'"I84'X]6_*X..]'M6
M37C2#&_66&>&LHT-CY2-W&<P#T,@SD!&:0(7E4&U7-<-FEEPS>4*CO02X0SN
ML[V7?Q3OTP(?7,@;5!B\]9Y\L$6 "]B[) GH2)76MT7'F&QLUFC*45(RFE]F
M>(>-&TF&<F0+!*0S$.(WPG^D1&Z\=590 ^1,]4"[EJ5U@EQ%JV32RP:W,9<1
M0S+,2QINF_ UM5+E<MN%+Q(-EB5L11K14 >185-Z?DDZX U#48S_K4.))ATJ
M!4OJDKT<]VVPHT/Z.I3OQ$K1^[>U4VD7TU>5+56HT+7U]DUS;_K!-^\F5HZF
M2"3';?)8+2E2QR4IQ[M<SU<8%V#H8&W\^](YKG0C.>Q$OKY<3JSIO%S/6A*)
M1[DLD:B@QG&V7J&]?KUH%:KFQM?+\RJ;;7.(BPSC]C#6KY"1>TB$I/%\D+G:
M_<,1YRVU-UY8XRO7%Z(NZ$+%/&"JB8;,3)YU ]]9"Z[M"5EO@<8WT*#IH?(9
MPA;?1'(K7_56WKP;S/L^$'GY#<A%9<ZCZ\GH6-V=]T1,K#=?NLS?J$L:0*.&
M\+^1P>*1Q0E_\PX5US;LCJI\$H71K1U9VK8;4W#'CV?0%(W6TV[PU>:A6E<2
MEO0EJ)CA#A-$L@!+E=%X$MN4YZF).FTM]L59;H!_"[M.K,\W;F0[^E!OON/+
MO2%:1+MUC2=:[@UY_+0Y6HD5,KD%Z25&SLUEC&AKP&AN3%LM4.31"]A<'0RJ
MV2D..E'G\J\U)K:L5# >'AQ\,3>?Y3%-=IVW"?1&F@&OKU<;)HO=Q+<)KELA
M26U"C1IY!F:?X+X:DH^Q!\T%MT?0<'8,J9"!A#>1>R. Z5@^#43&3X=$7.,S
MB+K3O V!O>.^-H^U VF*H !ES;:Z,6[<DP'/:B;WL,AEZ$4EP_W@V;_1$V*B
M.0VTMY@"Z\DDN6Q2F!0D]"#SV*A,O*X,,JPNBDH"6K524GF+[^90YQG0WPO8
MYI>RO#S-K,)3--C[_[3T<BJYYTJ>WY4UQP@8%5J\ N9;@+@R5>",BK\.]D;)
M&C&YF(*(-%VO05:=Y]D"F7%#SPUS5?&7U0*%IJ4::)8M9805AOE<YO]98S@X
MQHC,LT6?KVWB6N?^]$Q ?=06=V+79J!IK5Q2+9Y4>R!;(TETZ0A^1(=BR_MW
MOJM1OH<@,HRI2XBEL'$#ZC7NT$QM!Q%"V4+GR(]11E+8CP._??/UZV]O=& 1
M_+FI-+7QLJ=YO6H=IE*4U4+#QG@2(_*Y-H!>F8"?0B+BM:(E->CK,,TY("LZ
M'#63:-:G _>^W,1_M&BVG_BX6W2\9?0M>"@>Q=ST<<U,%'U7QF[%)9EHTHA;
M58<IJFAKG7\PVP8L"="9-5M7#64]ERDBVN.-AXE,_2:8VMC[#?#8FO/7,IFL
MEJ19$;YC20 >,NUV@!Q@S2T-E;C![:V#4Y3(J^*+X$B[AWS3C9SM  *X[*H
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
MD]F[OZ(/B*ZW_HC"1]D>?;_'*G [.3=[WJ-7]5E"0.O^B]8)))!&FDI$K$6
M$5#BA4#,;@2="Z$<WR>4%93 @\*%-I)CD6PSZ>UHBC,[JV"9BD1VA5_V-&V.
MMUS/5U:3> U[@9_724HEC27%)/9H5ZE)5EIKCEQ-J@3@<W/_/ZDIU0&<MO2D
M(Y"?H\A2>TIA$+7D>"F*)6&8*AE;B;R]H5@I.5P@N]%&\4 5AD<EY,4Z Q\
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
MR#T6,VRQJ3I[TO?6]XEBA:@S:"37REFM 73*0("$B"OK'$JNU)OI#J^*%73
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
MP7/3Q:RC*C3JO<#'=E >LECB^CPDCD-CI'"0,Q);@I2H7$U*0[85Q>!>Q?)
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
M]L?*54HPLV5$WQ50UD+HN86&8()N%L >4T.P'@I[*#Q<*)1U23W7ABAG.<%
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
M9I8.;IWA>&3C6[)C^UJ(X<H#F'_,NOY\[-B:&LR4\W_EQUVL#J3O+ @ 1!^
M>=:4 O,&3TDS$%^,+*T)XRRDPX;+COHVHF2X9:P7E0HOC";"%P3L#H\1)13E
MM( 0'8)&7T)(+[D9?<Q'GBTI6"1 79=W_V=M[:61XSO<O1QDG*=QU\+&$RC
M:3PX^Q4XNGG(L./)SL+CJ'N?XX-S'_=S7(!M2#(G0NP R=APYMO4Z=UEWSW=
MQP,[CWZ4Y/%SM5B*/Z?.S3!*;BT W?;@$:-ADL?@I..;?]KX)GBR_?CO,1#O
M7:]Z0*8;9D*GI(M9#+.+?^'\\0B[>@L@-NR/LQW.PIE H;O- Q2+WQ4CZM2?
MUZV1'\BO?M^& ]9IKYQT!%]%WZ->/X_4RD.)7DSAN1A8G 4'UH9OOQK9):IC
MZ_0D#@Y2,AIWOL:/XZ0+NEGL&!NR/JM#S\:<[UCK7!RNNHSQO8GM3M8!QLM!
M+:1(YA*KLP1G/=J8&"O,"Z).JAV";[XET<-$C;9T.'YL &$7:6FR@EC&,$:8
M:!0PZ<LP-$IZI9<$,S93[B7#UXK*ON13J!1J\V"C"/%+L,U/9''U,S^R4/NJ
M0Y-/<%>\K6*#KC:#NPZL4!_^V!A_>X,"=*LM2VTP9B^=N3[92HM?\:";AYD6
M$6>YKJ4*=7S@Q#\>>WG.0!:W-N_40ETX68B<\[]CT!4IFD-N]E6/_=CJ_1DZ
MSR$K0/'J\K9--%F=+_HD\,!(\URNM#&$:U-&K1,CL3_C$I^BJ5LSN/T:CX"%
M;OVQ/3X$"=X;WEX5EMB,FU%-'Q:N;[-)K3I2LVU:;"\DW,B6E;%LOVV&KR5S
M C)B&BK&7"1=L*%]K]P<[2LW6&]S,AMMF;W9!:O/^MA77]8&I!3)+)/IL3C+
M:Q;5J/2J>H-^-=F[[NQ'1ACB<A^'F'%.;2@.)IX"X$=8<M2 L]^"53Q(LZD#
MY00 6</G.';C07S7&WWI1X/T37^_-%@2P83'.9<4413R2>:*%_*@YN]W72FQ
M&TC?]9E'?-\+2=E(S@@4A&_J# O?T_K[6W__+OS][+3\_>=NIIK486(7/O^F
MO"4S#O$G, !R<WI8I #5C4SKK4VVI8=A1)5UE5>=X%S/#SPI7:DX(H;[MC5\
M@8@N)XR^<)]DZE66-/0"LQ.;5)%%?+G/U2U?HF=[R=CIELZ6#,P7.ED>X:XU
MG2RC^R3>@ILEU\1Z QLQ;ST+=H3IQTRI)@CQW$GG7.8I4W9G/TUNM5-V/M@[
MS[);[>>SGSO%;_'RO\7E;W/?3OYSM?S/5?[SPC/T+<Y2TS-[8S(NI_[H_%(^
MT+-\XW[.\\PF#W-Z:?;U<-!_=FH>ZVP7\D4JZ/GIO@=FS@#$24'^#Q%8)^/$
M>E[@MS>Q ^:(S2R[<)P_LE^,ZB_J% ^XB;M C4Y\=Q?GR?:9!07&-BVMGRTS
M3A6BS)D"<U@@/\"@10B7*%+4Y7-%H$)OCI93NAZ]Z-'Z:')CY6MLPR/CVW"8
MA./1.(D_I>G8!JO-,X_)U=LVS/(G&+@#RMM63IYRA?+%404,N%?D1^:3S>LK
M%!,MDP/M:"T%56R6LUV!DAT'1GE>N1RGOLP_6E<*3#'7QW-W7L>^=03ZZ&CR
MHYP&YWQAEQ:NCP>O_L0F/A9YD^6E/#4R]Z\Z\;_'O>^P_H-1\?J+@D,+ND]B
MV.-![J>TD\X8JY/SH?T<_^C&CY4'=)A.3GK&-;9 )7-:>6*G,>Z/"N;K)37G
M@1WOP&I[4>ECS?- \X_6/V$S9(!&BOS5A^@VKKE,7^S2>)8M+YP Y'\OST'-
M[YZ_=Q8H^KV'WJB<>#:O0;9JL*% )]F5.%/]L_PND(>C<9D#FV]ZYI%]J#*_
MHA_.*(FC/!\L2M.AW7=X0;:6KP[$E@?I@KC(YC19]D\V$VH0]9VO\?<8U'^0
MV+=QZ6#9EP.U3I[1FS/5=H&.R>J,EH&Q1XRKI.<2(Z7"I<WD8IO!-N,,L)SO
M+E82W->4A.+\O:1" ,:_6MFPQC'\*G!(-.TP1;;FUGG)57<9U.=";SYGU=5&
M@+3AMT$3,12O.H&*?>=5-QJE*544"\:5CS%'G!NWV'?$C3=CQIL^&.B6 ><3
M0/##_CG/_[,PD']9_P^A%W)KKMZ-58N%2U_UNY?2]UW-C/9AU1D/7.H6%2KA
MOY*:QI:^,=<;X1=J>U[VC0()EEO]VHDRXIH1QCVD! YTB%%(BE)VKF+(J,96
M7S:U^EAO<_5! F8RM%![NK6Y657#3LZYS?R\N1K7LV-VGN,H*1.R]T> SF23
MYNK;Y')QC"(SW? Q-S+ZSQ?39;OVO"@7:XMRM46YVJ)<*TN*YHIR+7-6L,E1
M SE;\;!ERG]7!_$"PV^>NWVPHK*://;RXI(6W&9F,QJZA"D8I(\9\FPH9R"Y
M(2Y3M8,7[G*C0+M$A%/M&>X"QL*MAE,FB:1\\Y(6#7MMKUZ3>!ENIL[M\&E@
MHYY* ?AR[:Q=GM<]2=^N/;)[BFZ/I%8YDL)+G$GI]:I^K%DLY&A>MJ=E!=2J
MK*9>/4:?*1Z \8+J =OHI/;JQ&>$_EI3GR/RP]P"^#M8 $Y@#8##*2JQS=U?
MU.I[&YL_NQ+K9=9NC59F+;Q,9JV9E;_S)=K7MO$M+64I(R4M[:IH5$M+QTE+
MUBU4TI)<NX_AH5=1\89I=LJ8Y&=D;2&V(RO$EKO"%:WR,Y$P+E&>U"&7)@@E
MYX04E2B-)!YO^ QHTF'ETP!L[CA+[;3'@[\-<[/Z11<62XV7=U=1/TX;[&/%
ME#CJ8FY[5>EIGWI7M=!T -!4.Y[V*?49(DH">C#!B2(Z+*#)YXR'#9^1[@,T
MH=G3[1::6FAJH6D?H*F6+QD:'G"&/5<0A7UII&"X@";%08=J.(!@#Z )+0Z<
M.FAH.J*$DK-?;<1QEG6:!:[:\JK#1TLO1USY=@'OJBKT2B@CF,N)9$AYF/B^
MT&ZI5C 5S.2E[M+B*3?.#&[]:MN*5S3&S;J#&[6!]E:?. *UX0284Z,J62ED
M7"B?>D'(A8]DJ SW2W>$'\QV[MZESK\;YI0=MCCUO&7.ECEWQ)RDJN@0"D%(
MH$,%QK?13'-;R*'H6J,5GJD2LDNM=S?,::OYZ6-@SM,XSKB*^UE=#:L&Y_WW
MX-.&K-SHFNP)C[-* !L?N]CXH5*$*>2%@42BU(X#89I+3%A#.RZV$UC\]W(S
MFV9PVJ&$'K6A>\H^N)-F<E$)<L*%<277(?*)L7JVAXK,YB#P.*?OJ67O@,E)
M1['C]F:U3'ZB3*YH=;)O7,%1H$(BI>?1D'-<^JAU*!1^3VU])TS.Y<(*S@?-
MY$?ELOYKWGP[4]6CVX?>H)>.;/;6]V-NU_8V,V.$6"U.1PDO] C1%!EM,U7#
M4F2;4+ZO7E[L'7"S>;%SS?NM)3L*Z[MUC1T'?Y)*VN+ 4%>0 "$A$3;$8Z8,
M5M%(B^9J*:RA4N^*/S'K(-&DS&T9M&70C1BTUHC$L\W8!<':UY@'A"'"=,F@
M@<TR?T=U>&<,:N,XCD*"-NJ_1GNK%5_;RM#;:,O8:,!9V[OT<'J7EL@HJEK@
M'E6<*^$BQGP6!(%7%O]W Z5\;Z86^/;*0"UMVU.P!)H\)#^V-J:G[/]K@;$%
MQ@V 455U$3%S-44>UHIY/B&AH8R7\0Y@[LW41=Q>D;:E@9%W%&J!L07&%AA;
M8&P6&$%EK,Z/F1NZ&NQFYBE;0SZ02DS2'US=]-%2$Y:O[DC>Z''0D0'CCAK?
M+UOT"R]L*V?Y9N/UR#_:V]_JJ5>KOY^^G-Y[US K!E66UJ_5&<ZJCN<].W_$
M2;>79C6Y>@/G;FQ[)H[R_H>]A]BV2TSC?X]MB>W1T/D>I_8TMN-\RWU2_>?L
MDF-E54,5J<MZ=M, 0VK..N630$O",0L#Y6JXAQ#/\##D?ACBF=3/M2M29__\
M7S[GO(<5?OU,+$U&__AJGY@Y[^RGWWN#WL/X(7?03=QYV4.OGQ_C%TZ^LNM1
M1D[YQI6.O>E^%[?C9-+OXFXX3O)2JS/,M'&]8WO8FI62;ZK8^*M;6\F.T T#
MEX2PDP0+XA-EN":>9@8%+@8Y,G=KU^E($DQJY.<;NV_[:BO7;V5?;1. [6XG
MK?7;,MPGOB8:A08DO^]KQ8%3F3(XQ& R[<=V1C^VO9VC>+"EW;Q+A@\9I)=M
M(O.2\L.D8SO]PBO[O1C^UBC7_6^CYS3_35S,I-X1(J\Z7X@$VR2RUXTGY9_K
MO1Q&SX]%QXC8]F8HFUE474Z[_6%J8ZOS7Q8/&LP.],)9H=?=+F3F'G9\ +D=
M/0Q!S?S/="W2[C =I3.M+U[NUE.4;KEV.L:L*LO I"&<>]2XR#;TY-3V"\R+
MIP>^%#,':1.&BI/O0"3S1?7GX<"J&7$ND-/LW*/^O4UJ_CP<_3T&=B\[)=0X
M='''J74+KZ.+67=*8W77\UZP3JYNQK?G$2A9T3?;QO4A @D$W%7TA<CVY#'#
MO8V(=RETKV4#:)OH[G%"7)^&F'M$85ZV0&),S7C MK;7.>:'P^1KM2!O:&I-
M0KQ%=4L'561#8]">"8SITO-K==B\ZM['M^-^7/16F5GS.J^4+<$7EW_&(C"*
M:Q?A$'$F>:A16:1:6N._7O[98UA1(*$0*]\W@2)E?)K+J<_<-XMA+WS/:GTW
MIZ5($P>Q6?<J6^[9<F5>X#@=/SQ$MMUU^@*0G:A8W[P-3+U7@MV^H@VT5;VM
M@V-2+?KDZS#CL]?/]O,WLK?*#I-=UC^FC3_QC;ZG2P[D7>OM[FOPTFXJ6[[J
MM=M:\<J\DQ;H J_JUKL81=['Z\3CY_:CN.KN2?!OA=::+Y+)5==W)<>@-&N_
M6&OT-,FR)<6](,6OI07WKJ.P77:LT6H=.-=Q\M"RQ,FPA/GV+8F_1:/W98-/
M0'^]0=KKONLH_B_JC^,/^.<YY'$:=3 N:]WGHU&M%Q[.K%'QWH$R>Q+B0$35
M_-L(:3BAA@OB$C\("0J+= &CC9IM$;GV"63AE*EM4:[;S_%HB@:;X2*E.E@V
M&BJV=PFR;;!76V[V8,O-8J*J$'U7R-"(4(?"9B[Y1 :E']ZC.G#)%M&HU*T+
MK;JTL3(3:R%&C5/KN<]>50<JLB1,47)!VHK8)PE1[<3;B1_)Q(^K3D<>:;@C
MI6-/1#&M)?HK7YB ^T1QI5W&C4=)45;'>#Y'C8OB;,'33T74TU^383H=[# W
M4'K6.D#+V@:HHR4_AB3A$_!MG4(6/Z552I8,0\H]YJ/ =1D*@U#Q0A'6G@AG
M<U47<E^Z$ONMH R_EKZPB3[,Y05MLCIERYD'9("W\VOGMUN5]-#=WB4\KZ.M
M'J1_^\,B22HK2:H"P@USL2)^B(2@B@:TE*2!]F<C#&V(VZ<T'<>W_CB9I,OD
M(2#U\,+)JJ^GIB[OQ*9"=HC8B7]HEG@WV?6FZ'O>@=;)6MDG7OD54UVESP78
M)0'73'E&,NZYH5&HX&W.?3'3XFAC+;GD^7U1E(FZD$W6N6H=Q_O$Y^W$VXF?
MPL2/RG'L18-NW%]/%]]"C-:^J.2LUHO=]Z6R38ZECRGF\">B1?,S[6N?SC0_
MV]2U' Z3N[@W&B>5W-ZVSHY51Q.UM3H<K]/&X6ONAXYF[YVVL2=Z.F.5#4ZT
M#I31/!2:^IK;DM&D.$OBB+HS?5@VUM/G</P[:^I47,A&>[$LH)R]5=B/@+W;
M^;7SV]OYG8;+^Y5([WQ5*,K"O>5[VUC[(HEKI3Z19UR?(N)KQ!"F'A%^J7H'
M'I_M.[R+<&_96+BWQ*0#ZD7K$#M&+\%.@[T/L'#GD=?EY/6ZG%1ZPK5'><@H
M/PB95D6#9BV,P'L4)BX;#1-G%W0GX+:?I3M;Y&LGWD[\N"=^5$<!)QE#SFLE
M]!1V-?*$T6X JCDCB)DRAER9(&#O$T,^TX5@A1CR_\3)\#9*[RT)*X+)+VV4
MZOZ#RHG$CW->%32$OV7HNJ'4OA(^":6D)>=)S.ELU-N[QH_/ZPNRDJ+<LN5A
MLF4[OW9^>SN_T_"DM\'CTV)45V*4A+;4N_(TXUB')G0G=8$-W.;-*K!-!(\O
MH9\N[Q(G5'<416WP>&M>M\'C&/Y;U?R6@OJ:*A>AK)0SDB0L$YQ=XL_OZ/">
MP>,;:\G3[F1ZP78"#'NK01\SG[<3;R=^"A,_*H]Q&SP^7VSS6@,&VW5!2H\;
M3*C+E0*Z*,Y^0T[DZK&DC02/-ZJS8]11HLGZ!VWP^*&@61L\GC.\J&QP1JBG
M!&  \7T:"AXBZ9<52@GSFR^%LGGP>-.:.A,7I%%-O0T>WT\MK9U?.[_]5Z8/
MW>7]9O X*3I7O;>-M2>26*)*$E.LC'0#R4*I/>)+2G1YJ$P8QOP]@L=58\'C
M3) .$8WV3F\=8OL";&VE\".H%"X)JSJG8V9\Y6." NT3CR.7%F6=/.PQBO<G
M!%PU' +.FZQ9VD+4P4!4._%VXD<R\:/RV9]DE+?D50LA'(9<PA5..#6(,2EX
M4'CD)?-(XV;!<E'>NHWR/BW?Q8E$>4M9U>@W2&(>:*P#1D).6.![85E(";N\
M^;HJ&T5YSW!D&^5]&FS9SJ^=W][.[S1<WFV4]Y0859C56MTP/Q":<43]@&F!
M."W+DU'-U&PD:!-1WDOHIRM$C!#9060GM0&.)U;D:,WK4X_R5J0R3BFE"BG&
M;.E!3B4VB)B"MP4WNOE$R$VCO#?6DF=[2^K68WRL?-Y.O)WX*4S\J#S&;93W
M?+%=:TL/&KB/M/(E<KW ]T!TNT6%+X/XNY4(;UAG[U#2:/..-LK[0-"LC?+.
M&5Y5-GC ?(VTA[!P%=<2V-PO7=DA-GSU4D';C_)N7%.7%VB761][J[ ? 7NW
M\VOGM[?S.PV7]]M1WBJ+\M8;PRH%6+T=CF_Z\017C]&EIFNAESH,E#0&KB$>
M*DF)ZWMEO(<G??$>8>"ZL3!P2DA'H^VU[EF%8/960A^MGV'CO3R!0/*-\>\
MX(Y5038^X!N""]0GV-4>5BC4$U<$1>'^1)KK1B/-^46+@BT*OO_$MPX"H%3
M7=T9#."U)N*":,Q"CHPO-558&J]0>8PO*/;F8L#-8@RX61D#OL8/46\ USV8
MD^7*<=2_CI,'\H:#HL;EYVG<_7@[3I[C*#G[E5RP25OQ8A5^=>Q7Z18#!UJF
M:)8IND [<=(<5_S7(MDH*K[@@6;8XYYK_76:TM# ;3E?N%IM-2/T$Y!_;Y#V
MNO\7]<=+2<.Z%#QG$S$HWA2#_$+,GIX[L(Y]^.-U+EEL8F_1E[ %$?E_<0H8
MY,#2._&/Q[AK/XR&SG>X7#>NG0WLZD.VCJ6J2H8*GPN/2F);71*7^]QXD[*"
MF#9>\S[?&3.X#8I]N1[:2X=N-.^MTG?L8JQ1-GQ/._6 X$/7)"IF)-!!2'R!
MF&2^KR<M,V1(I=H]?!R3$=JBR@&ARIX:AD#CN%:<C&'I JL*K0E8B5PH4QY;
MB]"?'UZZ@6&X,KN^9B_B?;$76\H_).N/(%(1OZ?<@ G?!*$G$:-<2#*Q_G!
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
MY8-_CT']_30 $!]GE8NG': 3O]BKB3FB,7_H)DD]FO(.EFU2STD&![=)/8>
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
MG?#39_/9^V1^<ZZNX<+OP>?K*R=3EL@OS@<OYZ[X]N?E9[>E\]#RO2_X>PH
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
M9GV #JQ3O^[I67-![0;;';T;CI/1O?/O<90 VTS8\.F^U[TO2#+;YOKN1@\
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
MRCLV;2MQO1_O_?(A2L,1W-081&$6-:A8WS,H::WQB.HE1@+!B PP-RW/=4T
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
M:%4U>55 *2"<Y6/,YP^D;*3>4AE%R1#4^)/2TEFLT_G5*I;Z^_?3ZU.CKDC
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
MK/G7*+U6*U[(PHJ;E.6OZC1!)BR!7F0)=-H>$G@G*K<%_'X!GJ%J*]1&%)D
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
M@OD"V #G.(=&6GD8HZA;PF4\+*50 P#\C)R_P?W/M#=6X_09*9R88 7%:XP
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
M#VD\,$A;H.Z-\E+LK?-2<)LRNV\BM_;@BIK5;JUBK$[?F)SCRQEB4B;[>68
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
M4.\)["D#[07K'!+5'M-86[6R/K&?N;])_WQ+M>)L[*Z<G[=ZY0#T2MSMA]'
M<*+!8$\Y:"]XYY#(]IC&>L2*9?-(E'-Y)7_;4K'\>FKX&[LLYV<7O_I7K7YY
M__K%BP!88=]0XC 8P,VC1:/>!T;:"Q8Z).H]IK$>L9K9G.7/KG^3FZ9J??@E
MV-AONIC+,FUURWO4+?X@SOJJ'/)P&#WM*0'M!>D<$M,>TUB/6*M<;<KNO_O_
M.-E8IVP<#3N[V%R1_673F\K+5HN]?RUV-8Z>3IQX:/PE3/:4[_:"XPZ)V(]I
MK.^E!J&-9AZ^UU;);JMDMZ='6IYLC?U]#2'];8OXT<;[[O+B\OSLNC6]W[_I
M[7\/C2_A$-"3[2GY[ 7A'!++'M-8CUBC;'Z:S[OR__X&2N7L_+S=\#X$G2*'
MO12<BB_Q8-!N=;_U0%NMTFJ5/4G5]<_/-W!SIA;C;Z?&]:9/<"/==L_[ -2+
MRM>-0+482AA&8;?=]SX2VCVFL6Y5[Z\<W]P<D(<?<R';69I<FU?WO[N)C1?L
M:_P_Y8O;I/?TR__[_WWJC^X'O_S_4$L#!!0    ( ). 35#DY4ZODP0  +$\
M   :    :7)B="TQ,C(X,C Q.7@Q,&ME>#(Q,2YH=&WM6VMOVCH8_MS^"H]J
MTYDT"(&R=<"0PJ6%E4%%TE.=CR9VB37'CFRGE/WZ.2'I:$=/UY[NC#1!PL37
M]_(\>?TFR.U7_6G/^>=L #SE4W!VWAV/>J!4-HR+>L\P^DX?#)TO8W!8J9K
M$9!)H@AGD!K&8%(")4^IH&D8R^6RLJQ7N%@8SLR(ECHT*.<25Y!"I<Y^.VKJ
M[.^U/0R1_MUKORJ709^[H8^9 J[ 4&$$0DG8 EP@++\"$Y3+-R-[/%@)LO 4
MJ%5K57#!Q5=R!=,1BBB*.X-KC\R):AOKJA9F)-+:<XY6G38B5T"J%<6?2I><
MJ?(E] E=-1WB8PDF> EFW(>L%?=)\@TWS6J@6I'V>F:G#0&#OIXK#QM6XV/]
M@V5:5;,Q.#SJ#OKU@6D-S(^6936Z'TJ=M@'U-YZ5%JED2A@N>SBRI6G6JJ]_
M%M>.6K8I2IB'!5%;9LR%%A<UIU(W9,=]#VJA\+4J0TH6K!G[^;^K%5>7:Q%S
M3I%>(D$(U,R*>5O?7U3-U63!XO>X[']688M[R&S:G3J@-YV=36>6,YI.4@T?
M;=Z;@WJMM6OVV>==>]0?6;/1P ;38^ ,!V V.!G9SLR:.+MDZ\;\ "*D@U*9
MXDO5K ;7Z_F$(3TWKF\*8%SXD+;2.8H'T9+7T9(*SBD&+J8TZ?U4JI;BN@R@
MF]8?'YY\*!:$K=6#H>)I0WP7KUN6!"E/C];&S[E 6)1=3BD,)&ZF%YM>B9:*
M-=9WB$) #]$:LD^E>A37%(H*<=.;*+P6T7C_NI4.NMM7O[_KT/S1MV7M*RP4
M<2%-U)MSI;C?NH5+3?MXT^F;]?7X6TUKW]36P&Q@S;6H2\J738\@C6\K0;51
MUR.?(>:\.3#?5^\P]8Y#"EM?DJT/D]G7"E'\6XS^MSAW]%A+C^Z)Z.%<$D2@
M6($Q7D *)CI#VE'0_PBI,X[OYU 0B8@;I?R 7X(1<[D(N(!1@W$<[7;1U9.H
M_ZS0)_M:O.$&UT!R2A XJ,:?7PP&.8I[+\+4W8=\9\/_DTTE,ZY5 #9V=6!0
M1.>EO1_Q8$=)GZ>X_V0+OT IH>N%$BLE\T3E<QL,]5ZGQ<MH=ZL4),XNI'U,
MX1**;0GHB^7O#7G'XUY!W@SCF4?R_C5B^N'Q+3@3Y HJ#,;$)PJC@L;9139&
M-!<</@DA6WSS> @2-CO8]1BG?+'263&3(571GUD][@>0K0IN9Q_QGD=8/KAM
M>YK;'B0IM1.""XC6E*Z\ V.%BGPCPQ#GA\QILC$\?5M$X>S#.>0Z!)WJ(D_D
M_0QU$@%.*J=%S,TPF#&*>:+M^6F1)V0<R7,6;9C@5 M&W,\3>8\%9"X&MF47
M_,TNF&L4\\3;+J8+$OK /IN-"^9F%\X$QSQ1]XP+%2X@?0?TMA-@*3FD8(RV
M/:<6-,X(M"FF>>*Q%4HE" 0G_GQ8<#>[<"8XYHFZ)UCXT?\5!76S#6>"8YZH
M.\%*#Z"0(0FZE;^+UPX9AG0#RSQ1>#3'4=Y@%P]N&<;2#B"Y]S6O$1\$NVE_
M\+C:,^BS]:SC/0=#?W9(Z0_H%Y=[:24^O;O?CH\5=[X#4$L#!!0    ( ).
M35 ;S"RG) ,  "L+   :    :7)B="TQ,C(X,C Q.7@Q,&ME>#(S,2YH=&W5
M5FUOXD80_IS\BCFD2JT4XU<,YEPD N:*FA!$.$7]N-@#7IW9M7:7$/KK.S9V
M>J=<5:FY4ZX?\,[.SLX\\\K&[Z9WD_4?RP1RLR]@^?'Z9CZ!CF7;#_[$MJ?K
M*?RVOKV!H.NXL%9,:&ZX%*RP[631@4YN3#FT[>/QV#WZ7:EV]GIE5ZH"NY!2
M8S<S66=T&5>LT>5%G"/+:+V(WUD63&5ZV*,PD"ID!C,X:"YV\)"A_@0N6-:S
MY$26)\5WN0'/\1QXD.H3?V2MA.&FP%'RE/,--[%]WI(QN[$6;V1V&L49?P1M
M3@7^VME*8:PMV_/B-%SS/6I8X!%6<L_$^_I,\S]QZ#JE>5^AIYNCF(%@>[JK
M9X/I]3@(QEXP=GJS,!A'M ["67]Z[;EC9]89Q3:C7WVK_;26"R[0RK'R9>AZ
MSD\OS<45YVM N<A1<?.5&QM%YBIV:_4SV_79OZ(H6991[*V--$;NA[Y7/CWS
MC"S/#(-/QF(%WXEAG8S78Z^WQS..C2PR4M&D$3R_ZW[IU+?$GU+9H7J] [7*
M#%.I6-47PX/(4%7H2-?D;G&?+-9P-X/Y8IHL$_K0=I5\F-^ODU4R;=MM/)G<
M?5RLYXL/,)NO;O^SUX,O?2QP^PU2U!D](- );DZ02J&K?C423([ !?E=-JX#
MG2O<DJ!(JZ-:8H4[KDTC<&^HR>M^I\U,JCW<6P/X>2%U%WS?MSRO%PR\JS/M
M1N$@;&@G",/H3+N1'T6#AAZ$?<=IZ<#W6KH?]2*_I3U:&CH,HF=^K^\[C7XW
MB/Q^RP^<OM-O:"_J]<-?0&Z!KR3%F,;0W^X25QX4N4P< UD]OV:X40>F3N"2
MNGI2*2Q(G(9:$[(J@K+@9_$M%TRDG!64CB8T&H")K!;%[193PQ]1H-8UB*ID
M:?162HR2!<A'5)\I.4,A8U=PS'F: RM+9$J?D\'U.>:N8_W>_=%*[.4$^[]A
M^@X ;&W#4O$4CU0<*I<'C1,I2Z2,WMPLWQ3:M=1&BBNX95JS-"=DADKW32&]
MZ+TW1?.J@G;#'Z&BOY?!?WB2O/QS[KS5P^FBW=3OQLNX?M"._@)02P,$%
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
MV:5SK<X?\US+OQ"-YIM"?4%EQ*Q5D"Y8S;\6W3Y47TN"811'"NRTL3=QL2]
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
M$<M]#*YH?T26_TY4;5<*BU:Z>C9?#?]71\^[_L^A>O\#4$L#!!0    ( ).
M35"\:7(6T04   <@   :    :7)B="TQ,C(X,C Q.7@Q,&ME>#,R,2YH=&WM
M66UO&CD0_MS^BNE65R42L"_DA0!%HK"Y1I="%:AZ_6AV#5CUVGM>$\+]^AM[
M%P*D:4J;7-.[1$&L[1G/S.-Y\])\T>UWAI_>AS#5"8?W']Z<GW7 *;ONQVK'
M=;O#+KP=OCN'@XKGPU 1D3'-I"#<=<.> \Y4Z[3NNO/YO#*O5J2:N,,+UVQU
MX'(I,UJ)=>RTGC?-5.OYL^:4DAB_GS5?E,O0E=$LH4)#I"C1-(99QL0$/L8T
M^PP^E,LKRHY,%XI-IAH"+_#@HU2?V2594FBF.6V%5U,V8KKIYD,4YA;2FB,9
M+UK-F%U"IA><OG;&4NCRF"2,+^I#EM ,>G0.%S(AHF'7,O8WK?M>JAM&>^1L
M-0D(DB!O%K[Q:^%1K=L..[7#PY/#6K5:/:UYH=\]#DZ.?,]I-5V"'\NU)I0S
M0<M3:LRH^X'W6T/3*UTFG$U$W1IW4W33S'Q):2:F5+$;''8XST6,)(]QBP(6
MJ 85'YJNH?@6W5(2QW@892U3G$BOUI6-\,RH>A!M.^'%\.STK-,>GO5[Z(X7
M@P_MWA"&_1U4_W<T]6OPH3*H="HP"#M66[]ZZ#TZ-=L#:'?[[X=A]U&CN<3P
MQ#N"_BD,WX8P:%^\:??"0;G_YWGX"=J=H5D)/"^X)S?F=*SS,1,QFE:O&H(?
MMLYIG0F(I! T,JD2YDQ/04\IM(68$0X7-)5* ZZ<2I6 [Y7_ #D&=B%'4F.F
M4[A,+.>>X7(Z,DF)6#C[,);*;K2@1 %%G>,5$COJ&$DN5?VE9_]R#&(:%7+K
M0@J*9G1I1),15:]>^D=>(ZB5$'S_Y#LE.JU7+ZM!@V0P9AP57Z$RH-$,Z1GF
M8")B"*^B*1$3BD D"<LR@P/^&\H8:P3@YA31RJ')H73V2S"G)>3 XX=W%01Z
MPG%L2#I31L>X*0K1[))"?SQF$54&<+N<8VLEMSG+4%*7$K'.>\H$$1'#@_LR
M;PEP3K,Q/J0SE<T(PJ(EK*6'W ]R%$V.* &B0&*9FI*WSK-!:2*AD#0@:D0$
MS<K]*TX7T(ZT63&14#)L<J;@LY!SA'5BS2:ZOA4BFHPX144Y+P+BM>,Y=IRE
M)%J.B].\$3-?JY9P,UZTPD^\W&W.8CVM!P>XCRF,.C:+Q8-K23?(+PV8$>%%
MC*(.SM<C?$O^4GD3W'4O%[JSJ^[Y^YOX%6K?KF3C#BVWT\X]9!GC&44N&<\X
M7V#.25)NXF@56XK^-6.*FAXK,RZSY8I[9!\PI?B'>_%^[I0I;A 97RFM?.\Z
M/%>A63B@?U(]R-D2FXP:-HR^ )P]9M?ZX),K[NJ*P2_BBDQ@>4KRPH753Q.4
M&^,LK/LI80H=-54T,RY9,LN$<T VW!A3+"ZDZ*-9GH#'J]2+&\;VXF%=#*EF
M//=HF=*\:&5;:;ERIR,^NK9A.&5944SP1*VU.#&BYDZ4*GG)XJUZ<5UC;.MI
MH$$&(>WB" LFQ="/@4!*E%[BDQ]%"<F4H69;Q/G@U<M:$'@-6ZKML]^PW8>I
ME:A!BC<[F&.=R21%!]S&^D?;R37^&S&T#KP9KPL0Q@'YYN$5<;=3UMGA=I@0
M-6$B5X_,M%Q.V/M</I-G'=]#XT=2Q525L?OB),UH??EPP[VN4Q>2H(;BM5-U
M;L]4N8BCW];2VN;2P?&WK=V=!;%'U3+9S&W&_]=!7Q_G]!M3.39!?C!K9_T
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
MXU+// K&9^%;C C]@!(PG&!3+5'ZL1*6,%^'5842UE(G3S_.AM](E!,A'?P
M<8%#V45XI]85+6$A4%(8%:L0RW+05T,O_W[=I(VH.J= HZ%'A699-:E4#:_Q
MFQ '8X2M3*RQ4"'NB_ U>F&=L&03P0OK-<<GD7E8HPS#:#@FK0R^J$=%O $/
M #6/\80-*<A!?\:P9N%=!C&EC6E!Z OU&>;R/@5&4(%!"'O D&%RT(#UQ-^+
M7KLQZ-^BVMX@KF-_>IG[!AV3&]ZC V#>&$FA,'6;V]D*P(<5PN&22]^ST 6"
M 6N1/_U)P%4(8\Q!7 L*[XA)B<*+D>QB"NU)2 UHCG 4X\U]E'F<ND#(GU,_
MW];*X@.2C$ \C20G\>40ZEX^(FD-"'5:(D+8.9[]--0NAJLN _ZUOD@URE6^
MLM=!,P]:ZDA31%O#RE4&%O<-?DB,W@&E07V"DD$=@4<+1F9>E7EX-?>JS%/1
MNA](.B8/8%1[+&$%4$I@9?'0I=W"=;\V%'WGX."[)6 II^#.TAO&)@Y3\I'8
M'!C!/VR22[#+U8S/[<:WF'YQ:ZC[,)SU'@!LW.SS#T*#.F1O&P=C]<'L:S[K
MK"@"_.V5P?UCRCN%(I=H3+ XM.*)R2 %[+6OXO,._#5$E K.<SS@](%@1&^@
M4H.-@C%P+*/5DB_<B8A.3WGM]8H+:0FH3G@!(WJ_V*2PE )3T!S5,:!H#C#=
M!4^89P2"3;1H9#=J%P$LFFT<ILHB4U4N=N_7?JQRB",KG0FE2CSO+4;_W-C:
MH-^VY%G\_1G986QU,@>3N3QVGLG<C7>?/X$OP40PE^/+\(\>-6TTGV+H.^,J
M+(G3Y<87*:SP.9NXEKM/=_RL7[Q@=#KT9,G:!MHOIW3O$Z3>CE9KG&&#6L.L
M')_%L7H.=LVS\HT7N^P$W.<LTR;GF-A /A_%?"A!)F*<Z&4N8KZ8%"/CX08A
M-H"@/G4(D1]1RT[J?YR0OH@_3OPA"SB,>'A$TP@.SIS// )8-R7D[/AH1"E'
M-/CF7'#CZ?*0,PLKDG&7>,2>/%0]!([):04%X!.1)IP KG3^@!1]8YE5RE&"
M1*H"4"T$I80C8)*-]BFAC7FZ+9Q$S-\C0?PRMFFP. G66D6L5<07J(C3EBA.
MEUU;-_1C]E XQ@Q6O2$FWH]TC1A=[;R1$'F"?$3.1A>L-8R41L,BRL#@$XDX
M'1HM4BQ:OC,%)W6N7-VEI<=-RNY:4M>2^@62>N9#L A9*44UA;:+..3U13>5
MA:;T+J0M'.C0S'BT58"$(2D9KZS/)J5'-2+XC 2,IX]_J9./FG%>.K==3K7
M8'N,_RXK Y\5,N49P)(YQO@3VUY9"N$.I5*1\) QM(CY+KZ3II;D!LA,K*5^
M+?5W)?7G:,Q R-.SI\287EO:F[9OR5HWYUS$4U,K'E0!6MDE@?(2QS-_R%49
M6V&F.QXM8X!4J\JGQ)<XJ4\+N4Q5K!X!K45T+:+W340!0B>208SOCY!G!O.9
M*#Z%1[JW8IM;9L;S49!,QS]@WA,*IK>9W-<::+,LX,M*A0PYC!*./?U J]^#
MTJ>DJ(*D^K'6@K@6Q#NSE:DLY%,*3@$/@WE H<E$7AGQM0@YA*^QAFB@I!U?
M/M%*+D1#Q*!=J2U7BXJ<0D]DDMB;X5DP9I!YL%\#7FY3P+L2=+XDB%5"#U71
MX;*/315YY=_$,K<!%ABC*\W35!<9,Y=UZ55/_+CHQ/N:,TP,60O^6O#O2O K
MX,X:*GID">;-)![S5XA]/!QLJ?H,)CD>9MD&'3'-J^[69>=):*HNG#31B_^T
M9]R>)+*4>QISM4#G[ 97G7*ZO-+P=1L>-6.BA39UGM9%*4T=%\>R/GB'R0@8
M/_?:C/S\O5  0B&(4G"5))+MT?G9TNNH8C@RCQ++RQ=3P8"+,6&M _TU@A)*
M%W)C]$ Z =O8-ABRA%XZK?Y+0_FFC!$+>J-B6RA;3**E>E%80?PQ\)&$</Z
MKS":@&]\R($R:96< %O&18Q)MO.EW+?!?!-6:U&[$O)>%K^7EFB-JM;*]:Z4
M:U+1.:@<>U>$I#5?WOF5<(HW!Z_BX%<4/+ZM\[86&7&+TI A%85@LA8EU]4'
ME%A+TO"5@MZ-$"JI= YSAP!'Y4" D3ZJAP91-U)X>:X+O7UU/9UA^C-_GQ!'
M1)05P,3,YQ.0+L*B&2Z;,V:\Q.7N)$-2KH$_/?2Z1DQ*I>=" $V%&$K'2L6+
M<*I)60U49-ZLJ;ONDF:ADH[J.)=./7TY0\S(0+<2E/&D]!7M ]+S23Y&,X*S
MDOL&VMPG %-3V)&+.?4&> WFT<]/2]>!=F;D$^/J6KEO '/>L?32DZ7ZMYC&
M]#("?MB10? \8%LH"7R=P[1<]]J2;-K$@^%R$Y^:N;/U,+U+H8L9$R-_GT>G
MO@8%&\$8=',"W>A JD*!_R9 ^NI]2J["\-A-%",^(N<,A"\6,M?N6[;8S7AC
M D$WD-305.(--2!A42=XC9@VIA-7S,W ](D:B]0UODDOT$89H!8<O7W86*]P
MO2RH6TWX_KLA"W'CWPY9=A[=5\AR@YO[-O5CKLFGV&,0LZ06YPR!^5,IK(\N
MA P^BF!M\H?&B@C"].X0G*6@+4P/IM37>+<0BH&@T>6DMFW)=:Q>7/]5=EF+
MVUK<KJ+U'5::H?N-UTRE"6XWS.E>*-O?,3TKL'3&,26X=>P91DL:]76^K*-%
M?M,H2EJNNOP%6'2"J#KO8$F, @F?BK3ND @8)%5@;#;6WA_!^[Y\C"6$"@;S
M.@Q2(WE/(.%XC)O<L%C?%A);ESA<J\1AK?Z^&_5W0%XP> -6?*R$SVV@PE+4
M(IW+X8"T*UD/+8"# H$+'_XSSFY7:MVN2JF(^M+-]"8@?9/;MN!R0X62)I<^
M.;)6>I=KYIL*5MZ;:VANPZ4,MSOB,0 &EF($:>46R*N\],[GN7]T%^50%CZ)
M+E2EA'@*77]H!=#.5:R^#('WA2&TP8P'GQ.&PF@W5W4HBG)[DNA:T]]M]SP7
MK1,Z.=;H6RICQXLE]4@0+=Z!!6Y6D@Y$242LU1G]["!36O9 FQ;G%>N'<FSP
M&]MNGJ?P%!/4]X6EC.^#:Z$N/@3%HL/N+[52?!X7LHY,4;X$U8]A8N1*D5((
MEZT>#Z>G./"!G5!B =0@DU!=5!)WBZ/@TONR)+Q"#FNC& 8[1^-P.U8#T. @
MOK*I[:JT9BT#*H02;Z6L"HS>H8H3OMQ>AK('?U)<&CQ(X@,=SIRQ0(M+Y6NL
MS ?A?(NOKEF]5V7RMU:(V(^5P <CJG+#>ZKH&EW#S?<2E-NYN<M ZL)I7B^7
MB<M%>C6M'2>>E=8S(C)_A1<1T'T@?8/YP77AX&GWX*8N=+BAC[U_G'K*;<X_
MLE=*#\ 2G/L[,?XDB5\SZFKR7GKJ0?=#D16$1\C&5ZQEN#J;(-Y\ FL?;>G)
MV<M^-YC.M5:]YVCORRCZSCWW'^(/^E]/_+A/_T^,%_\'4$L#!!0    ( ).
M35 </DNS'!4  *G_   1    :7)B="TR,#$Y,3(R."YX<V3M75MSVSB6?N]?
M@=7+9JI6L60[%Z?:F?(UXZDD\LI.9]ZF(!*4,*$ !01MJW_] N!%I B" *6T
MY:6J4MTRB?,!YWS P<&%P.]_?YJ'X &Q"%-RVAN^'O0 (A[U,9F>]K[=]<_N
M+FYN>G__^-OO_]7O_^M\_!E<4B^>(\+!!4.0(Q\\8CX#WWT4_0 !HW/PG;(?
M^ 'V^XD04#^>(O]#Y,W0' +(.<.3F*-KRN:7*(!QR$][,?D9PQ '&/FB""&2
M6902%%YSR*:(?X5S%"V@ATY[,\X7'PX.'A\?7V-&)Y2_]NC\X' P/!D>'K[O
M :$DB3Y@-N&V:4-,?I32/DU8^)JRJ4@Y.#J0KR<P0EER0@F)YWH!G[,#OER@
M Y&H+U(AAKU<KEFH+" 3^"LMBJ5Z<Y"\+";%!ATPB3@D7J[#4T7GQR.5>GAR
M<G*@WN9)(U^74, .#_[UY?.=(KKW\3< %/%XOJ", U(A+(#11$E&C/>ENI$B
MHC\8]H^&/9!4F,_4@UQ5SZ+215$E=(!"'JV ^BN@UZ(,/7#@5IQM%&23(L11
M?PKAPKT81<&D*.F338O#:-B&'VUY%-:F!6I98;0%:EUG3.VJICA5$?E7/Y/K
MRT?]X>%FI5AY*+=29'+;*,7) 62>I%K0YO$^>EJ$D$!.V?):_&U7LI"Q$LK5
M"D06\406<?AV@R(J9(*FLB^S+U)1:JOE<#!+)K%Q_OH>RJ881<FOB> 62].N
M).V+H>]-+=M/)B S?N.6982\UU/Z<.#1F'"VE)[IG<FE12;![(_^"J5E:6+&
M1"RX;/2PU>(4)?._VGC7$JR/L'M9,B'Y8^,2H"=OYEZ$7$K]VK@0F#R@2(4:
M1S;]GD8L_=U?0;0K"8'8BQIK:[U4\G/CBAIA3\(-70J1R<@?_95PRP+P!9-H
M[YVJ12ZE?O57\NN%@(10KI#DH^SA8H%)0),GXIGLMS]DG?<8!4 %[!_2KM,<
MUA\L&%T@QK$(IPHC&P4P8R@X[<FA4S\;(_W;@^%K,1#(DE0R*(<5JIL2(EX<
M*B4^KPJ9(4C'?=J+A+5#E&K^EROEH\!5*2&""=YAG4(X<=5)B*!P1]59,.2J
MCA")$.&M*IX$N!<) !:CW3-/]:O1&'D(/\!)B,["D#[*@#VZ1!SB,.H!*?%M
M?%,WR:!*9 .4E2,KR:JB?3P\'HA_QZ /+G'DA32*&1)_]$&&"U; 8(4,7J78
M?_O]8!UR+;,X0OZ(?%2_U\V7"J=)#()K[=U:KMRDM&+IPXP=,V<L1KX8,B 2
M(7M^2D(F+H;#P^%@L,Y%B@ RB.Y:W+5AZ&2-;6$HFT.3_?=U'T7WTA^T(R(5
M-?%P-#P\&@R;>4B@ND3#>1QA@J+H@LXGF*C"1%\IMZ6B7MSHE@9O-&XIPP)%
M,/!*P76=DEM&Y6(#=')8-D#FGOR-IB?7T]0' ADHZ$ZZ,YVMQX*.!0UQ=.;]
MC'&DLMJ80!-H(YF5KJB.S#P74,AF3VQJH#LH>HF1,/L<$O^",C$&5R^VR;-#
M'HVT']G2KC(%(P*2;$$AWWU%T)#D$K48Y(VAR^"-)G2IZ2N[%[\(_>>8R\7X
MZ$RV$\(QF2+B85M:3 #&&$8,KJHQ3 $-) VH@+>G15K!R3-:X!B]W^%0T^D9
M2>JD;VLV\W!;? V;":MT5W:$@>&>LJ*E[]$3CV&X+>(RN$;Z*B,&2_K2#/8D
M*KNXA!;-,,8(XW"HB3 :2.MBI$$B,2+RY8Z*<QC*6>N[&4+<FJ,Z<0,W(L(0
M_V24<2?,IO8<*FI64"#% @G8G@\>W4(FM)HACCU[[V>%U<#4&]6*+)D"KTK8
M76U)N;5&@? X0J\9(A%^0#=$D(/<V6O ,S-XU-#65B]H $KP(,'O.HF1L#J,
M9M<A?6SA%O4P9LK>V%(6*<X$*E"P>Z96)KX0I3S<$ET)UIZS7\39QFYQA6'F
MZ-")H[WW2VU[QZGW8T9#'['HZF>,^7(SKC1X9MZ.G7@KPO\W2#+H$(N7B.$'
M4089'D2<Q=D(ZA_(GXJQSIDG7F&Y^^<:8O8'#&,T"E8R;C-96\K+O-M M\2S
M @&%G-68+LT;K#(7Z67^0!5 UI!"$3HY,V9-VR>(R6<:J26;7UQ#C%DU5I#*
M[)IK!9'9@U>R '\#E.QKB"UM#MLJ'#&-ZQ1#W5X+-\Z[MP?#F@"7:3I74/..
M)MVRH".MW9O$NY1NBF,NS.7FFZMRYE7WM\<:=E8@W?24*_U=?.&ZE-';#=[J
MO%W1\-WS9>D'\<+37!%AA>4-">0^+0EO28$)P4#'()^^SC_*+_R47BF! P6\
M#A%S-5^$=(G0.2("EKM%BW7"YN6Y8XU;RI! !M5)Y[1N3P</I1<U;QXYUK@I
M#1&=<U;YZ/<+@M(L*H"QHT$O:HZ-=;U%80!<1.HZ"1>4/,AOH43(*&NE2^#K
M@&>.>=\>5><W:N@"!7P@,^ABN*LUO%,W8T0PSS6\U<PUU)'5Q1Y':]J-FY5M
M.ZJ$ ;74=*_9?*+4?\1A*.+=$9\A=B,T(5/I2<ZBR'K'1R.*N6O2;2_-(%7L
M3"4HP#DJ@ IVSU-NX>M8#OG.YE1T W^JLJ:?>CFYP(US,;M)W8XY&YYEDU4Y
M@V+6V<=LG?2H34QE[[=*_SIH(]N5",:2[3S9GMHJ"^M_;Y7B.O!&JBOQCR75
MJPQ!DN.><PTM+K&2)98Y;-+MD[5BM(,Q5+(EY!X^V3)4%##/G>@6M!)IH,2[
M:66Y'Y&2XA8?\;A-O..(:9YPU"TX%[E*=IJGF:RV$LF7G0YE"B1<!0'R>+Z'
M53P;(X\2#X=8%;(MN;:XC017PM<U@O.,BN26\^HZQ\E/N:?B' 64H5M&'[ \
M\_B:LD*RME0[PC<R7@EAUQA/_TPWB21Y@CQ3>4Q 6:+C['^%C*E5^[;\5@ :
M&7S7P&".V'EN$+]$ 6(,^>+O%H,+2ZQ&QMXT,88XR-"5A^WPR*%@<Y=!0E7,
M.!XXU&W!*?NU3L?]WP@3G?R4X#]5?6^US&T/U]B WC8TH"*^:D"=7@^_(7X<
M<;:\0U.Y#O )T2F#BQGV"GLUQ&#Z#@N#!=B#A%^(],*>S)K9]AF8QX>Z1=TL
M-Y!F]S]@E6%Q^XD:QA?R!'FF>^YMJ&GS[?GVLC/[@+?:P'73>M'I#]@WH&Z,
M'A")T?DR$UJZ==7;S]C<V>O63+=0>]+2@,D23+/R=#-N$':0MR;8\I\E-_8%
M@W?:OB"5[:)Y':.O-2FC@QV\TSK8%**C452JO9MO*PL9_=+@G=8OY4;OGB?Y
MC*#KT;YE$7,E/];,:"?RG:SAB>I?((\9YLM1,%H@.7%$INK%9PPG.!0O6M!A
MC=G(5V6".N4KRT&N.^1Y)"]!GDN'6778 UT4,/?(NIW/6?OIW';G1/%;&F+[
M$PO79$S6/AP<'U:[Y,S:&43W#.[2&Y<DS%WQL:8KSHS=O7[8UG\[=0VNH.89
M@9/CY+0$;X;\.)1T.78)G>P<ODH;H5&0'4)KQUQ%RMQ-Z+:_)A"2&CY#^1FX
M7;(\XLFD]2UB=S/H^!%KK;0Y@!+_WJ\SD2PWI1/H @XHO$ZVAMODCJ"E_#CR
M9XP7<A[(C@^MI+E5O->TB@PF^: R ^HX T.GEF%$,+>.]YHY#STC8+AO'ZDI
M-B;'VG-55LUKV=ESDQC")38VR)LCY?>:2+F.E^Y%SO\;0\81"XO?V7\C,/:Q
MN@/8AADSA'G]5#=GGN.5EC5>Y9![>E)#.+DV*R3S$$8WY]Y(5B>=G='8+E[/
M!LB\EJB;L[<@K7N>,%T='2<;<R2H/(><08^GIRF[S1[8PYD#BR/-!LIL(;<
M#C+T[.SG;BX1-%O=I?59HYDCD*.C:FQHI'"24[AOAI0(N\'IE*&I*MDH2%-L
MV!H;4!L;966+GX[1<B9R-BE+M6^<$O1&_@^&9XM%B#WW+TQ< !L)/;$A-,4'
M<)7!GLH:RV_F:6OQ&GUM90G6FLB]MZ7$82&V3M@\KWBD&?+I&.K>"FW5GK<R
M')!W=LCO$WTL/UQT6\!U@S2O[QYIUG=UQ.4Y )1GT<T5X*KU"QLS_QG[4_=#
MDMP@&SN]RFJ+CM#B;M(\BWVW5VO]39NH$;.QC59&^TV4_F=%Z;Z1;AZXV(8I
ME9U]VDZP>R')W8PR?H_87.XLC;B[BS0!-"[B5%CI X4')" H(';2_ZE+/,ZA
MD)8G*2 2J?)8TJ*7-:\/##3!H@+J*R10A.H\#U?18N'64AIAS L" \W<9!T[
M\G"&N]O;?;/)+=+N4WQ+K$;B*J&\@;AN?Z&OM_@XBN6%"K?B?UO@3X/6R&!E
M!M+ X/CN6W(WPZW\L6<Q,XUZ*A^D!P!=A#"*5&#L/!FY20:-7%?&:;5<JQ=
ME&JAAM_R4".OE.>>_3(YHX7\&:67E;A]/>(.V\AT)0 UM.J$ZS2G[+J5;GY%
M8L%$%,7SY.>V.:XB-])<F:2VIWF5VYYI+1]73XAY.$*W#'MH#,ET&Q&670:-
MO%<6@JUYSS(%*E>@LMU7@-Q>+I,V1@3S=IJ!9CM-+85=G+UI>2NIV^VCA\/A
M2=W,0'?O&*W:T-WO:<6-7FUXHKGH1\=$-YU5/)]#MAP%A1GW,\^C,9%?>[FM
M%%ABF9=?#W7M)@%6U_06%@96V" #WS.W9NVV)V:V1F^<P:[.R%FSFWUEQ3M[
M4J8=+2UG[MIA-Q)>V;CD0'CGY_:L.%''N+<XC[,U>B/GU;D_>\Y5?OEQ\7O2
M:VCY%7VSY2K^H685WX'@3B[CVQ'@-$IT030O]Q]J+I-S(;1[X\COE/T0-KB
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
MJY<EJ,^BEQIM;9+NAE;RXY$Q$IVS-X-ROE*&2'/Y80D2OD3=Z@WYJB;;IM[
M[PN [6CU'?/9#(7^/;V@(HJYAT_J"0WE-UACI#X>4M1\6U#RA^!)/+ZG8[G-
M&WL<^0KD&\%\;0OKKP+?M1V#N36%<A>QFNS])YW(<YII<#@8OA/L/V 9&\(P
MWR29;BM-=Y-F%ML$X*59Y5Y$ E%ZO<U30-F9Y\7S6&VJ7=LDNK']MIS5KEFZ
MMB=6*T4U6SMKWNW>Y-K](ZU30?=FMQ6X0YX8W?GI)V[2$WZ*H:B='"$_V6 5
M99/I];JV 7G^.<7O\E1 PI>RN\^T6GOV%PZ"DL-M(F^&YO#C;_\'4$L#!!0
M   ( ). 35!;B4+<5R\  &(] @ 5    :7)B="TR,#$Y,3(R.%]C86PN>&UL
M[7UI<QLYDO;W_15^>S]C&O<Q,;,;\C7KC>Z6UG;O['ZJP"G7-D5JBJ1MS:]_
M$Q1EZZ#((JL*1=GNB)8I"D?B02*1F4@D_O+OGR\FSS[&9E[/IG_]B?P)__0L
M3OTLU-/SO_[T^SMT\N[%FS<__?N__<M?_A]"__/\[2_/7L[\\B).%\]>--$N
M8GCVJ5Y\>/;W$.=_/$O-[.+9WV?-'_5'B]!UI6>K#Y-Z^L>?\P]GY_'9YWG]
MY[G_$"_L+S-O%ZN^/RP6EW_^^>=/GS[]Z;-K)G^:-><_4XS9SU]J/5HB_X9N
MBJ'\%2(4,?*GS_/PTS,8X72^ZKM%)S?%/S\H_XFM2A-CS,^KOWXI.J\W%81F
MR<__\^LO[U;C1/5TOK!3'W_ZMW]Y]NP:CF8VB6]C>I;__?WMFSN-U,W,S19_
M\K.+G_.??S[Q?K:<+N9OHX\ KIO$D\ED]BFW.'\9%[:>S(&>5;,?FIC^^E/=
MN 5 00RA5&<@_G6/)A97E_&O/\WKB\L)(/+SP20WRQA>?;Z,TWEL0]ZFXD.0
MTAZP+;6&(.Q]GI5]Z;I;J1>RGB_G]33.YR]F%ZZ>KA;H_+?98C=I.RL.1MY9
M,WL]:RYLR[G=HXG!2'X+12YGDWI^XO^QK.=U_K(#^2V:&VPH[RRPX"ET=V&G
MX<6LN9PUJS_T,[+]6Q]LH.U6Z.Z:O1 (S5_4B[P9ST\R,-,%;-NP?=>[*6Q1
M=6@26S)$^Q8*$4RZ4TP*D_P^?EXL[:0[X?<:&IK\=JNM=0,]D3N=@Y0-6?=]
M;B=9?7KW(<9%"S)W5!R6O#/; $(?XJ+V;3AAGU9Z)_S= G[F"3U-,+F73?P
MFD[],;X!T^0B[D-\NY:&&\ <^K7S#Z]!T=Z+0;8V4(;<%W;B:6>:[[0R*.$=
MF.-![4$)?;>8^3\^S"8!S.Y7H,$LK@XE^O&6>AG R]B H;A8+9?YHEG>B-C_
MB.$<1.R)AS^!]A7GKVW=_+>=+.-I^EJG[0;?;R]E!_XW6T]_F<U7RNE@XV[3
M2=EAM[(%#VNM[$#:*1@'-M?/4/)D+^K%LHEM^>K1&GT3U(X-'BG?#S%K9R1,
MQBM0^Q97;Z8IF_#9XMI)6(NZO1#Y"FK/KF)\'J<QU8NV\F%'M4%(:S6C6ROU
M0M872?]KM'-@G-6"VT76UDK#D05[\\?8+&I8^1F(=A)E_Y:&&T!+=FQ3=S@B
M.\ Z (Y_F\W"IWHR =%Q"L90\V:ZL-/S/'$G\WD+4[!M_2+$OEYFV7QR,0/6
M^^=*^JT]RRT9HZ_VBPSVYN\]C>V1YHH,Y?[O/0UI1[-%AM9NM>_72B^$7UN)
M[^WGW=1M*-HW"=FC,9O>ME_AZ_T6[V&M]3V05RE%O_CBEH'OWD8_F_IZ4ML]
MS@X.;['O 5U_S$;;\PA*93QK9A_K?,;^>M;<*K;_N YKN._A_6:;9F4/[3^
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
MVLDH) SO.IK.9Y,ZY&>FGMM)?HGPW8=X*\:KN//FM@-P&AY_7'B#@-E5M0K
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
M%#I:(5E('12J,I$VA1AK2%#'$U<WMXZ^WC;:2UH]K%YA TLJ1Z,E80GR7$3
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
MM^KH;W'WRQF]@E7,^HM3P&"2+Q6$BWI:SQ<9D8]Q-V_LJ%D)S26UA,(@<\B
MI0%I8P.B03OJHY*T2R[6,KE*^F60_A$[V+BXK=/,TIOIPD[/:S>)U\>7O\VF
M:V5YLYZY;Q,5)9$[IQ/B40AD<13(J<!6NK;%AB<E.@B+,A=8^^&% M 52WX$
MQ-]5N'8+C4?K5/DT2"D;401.1?ET" 65LTLEV%)!UQ;.]Y-/]SMT2/:)>L'3
MW6N,UJ2NTPCL/'1Y4*.24GIK$D8P6 ++E%B$*0A8)BG(1*SO7"8_5M.F[Q.3
M/F :WQ]RD ^D8H(;3W)R"6!R8'KN8*32@;J..26"@1G?3Y;X(=,I]#2\(FZR
M41]LZ!>H@NZBPL$'JXQ .3U9;.;7ES<?"4184]>%AI>QJ3^N=-\W4]""ERL2
M ,?_B.'\3I3):ULW_VTGRWB:OM:9OXP+6T_F1T#?UUNO1TG>;[-%/ 8ZWN=8
MLR$)^9J+>WCPO_8U-+PSOX(TO\4!JF2^30W:X\4=[W__O;ZZN)S,KN*-7C \
M-]_O<&!4OXB47Z.=PR3>2310J#N0P1\C[!*P*O)HAUX>&VG8/J_#:W6W@OB^
MT/>RGOO)+).X1;/;7K$"-45H(ADR3F%D6-"P^5J)>. J@+T< DOCQ:-]%9GM
M E0WEJ\\-SI@*5#$F"*?57_KP!*0H(UYS3!U]NACP/J<Q@=Y4_H!K92!<^WW
MV6\5/%JGLM@*C8F#(6;?E#(,A2!2=CO[$+GWPK:R=P<RYC8F8MMO[*W;J(3@
MR8A <_)Z0,!1CZ1V#*E(J-="::NZ!&4762@]S?1] V9 #(NMFT,2_6])-"\3
MLT)%BT3P&CKEV16O K):4QR%(J1+5HHR]NXPW-(K:.4<U*!(?KWJNI^,V5VY
M8H0:8Y1'2I(<<Z(D2APPL/"M8RHXV^5MFS(G7,.PRR#@E4NC=Z,][+RC>;]H
MA44@UB2!.'8"":WRBRG>(D>=CBIAI7T'UV*9@ZYA6*('J 9WC6VTDX8VSK(/
M\5,]R<?"ZP<1[QX'CM?SZV5V<MSV9ZZ/# 9W">RB[.;OHQ-R__>QC>K7]106
M]R^PRL*#8^6X[?!L>\4J:N6"M SZI;!.M= @K0DL5D\UB2((PUL=X!<?]2H\
M]+!QKZI6D1 8O.9()YIOO3(/6U2$?4H3 N/F@N(.*=_+6!!]3NYL</Q*[?-;
M2#_Q?GFQ7+W<TC+D>O_&*BD(Q][EM!4V*\X,(Z-R,@ K@_71AL3[L3:&/)<>
MA[7Z@W1PG6+7#C*T>K$A8]Z@G>0<A+/I[?O,7T,-QMX=CR^F9" ?V[)I8 ;V
M'^[VBI4-6H&1KY"B6(*]GU5V8B.2/OJ0#!:4'/U>V,N,WO>E]0U;L<B::\)?
MSQH ?GH ISQ6LPK.8:8\19A[#/*7<"1%E$A['P@-()[%T5\<Z'-:-W-,C_ 5
M9IE5Y CL:;_ K$T.8)SM]2N5F+*..60,S<&)+J>?4["E>X&9H#RHV.'%FT*1
M1X.S3^\@EI8[,>2 ^$/DSB,U*X*Q"B8!C$$SY*67*,9DD*=&8^8(C[[#R6BA
M%U*'ESO]P5?.*WLO6W!KEME1LV*<$A>#1-3(?.V"1Y1P-,B"E 7)FV0@_5Q]
M?&):3?^XE>:5-9L?SC+;&X!=&M,H86\V+"H40T@(VL+("MBG+==1ZJ-7<GJ=
MY4<XJ'<82S/2G8WV<'9JTTSEK?!$@:Y'I,7(Q:@1X82AP @(94#=\*-_0*D$
M4PT$9G$9=6T"=)!16QNHM+<Q:<.0U9P@ZB)%6K*$(L5.,$QEZI)1NXQ"5$1&
M]0WCX)[%V[?(5F]>KN*PU]_E5VFFOI[</!YV)(ZWNV3]-LO]YXN.;M+B\N >
MK53:9G\OY<@I[5# EB/!&$=<.$&#B0Z[5FQ?%(]'F._D1E_/(F\)-%Y]K0\R
M<'_$#NNG4EY%(IU&V%HP"8CG*!$'JT%1IKBWFH6GX_[KFX<>NV4W$O+%KVG>
M'>?FS7E7*MY]6JJ24):M[ER'@)&*&LCC()%U N.8:,:<[F#I%S;;QN'&'K$=
MF=_@BQ>PB=>[,NIOKUMYGD)T7")N8T0"ZX@L=AY9Y@AHD)&*+KIWH8Q8(S-5
M)SA'9J.7<9UV8?Y?2SNI4QW#V9=4#*U>MN[6<"6XTB)HBXR@'C$J%&*&B2SH
M*>4N<D);75X9]?W&D1EP.*P/3K>R03\'R;L;GE>??9S/H?C-W;BW<17T\'ZV
M>O3/W7_T[]%W1T>@HF(I*2&<0@H4%*2L$2AJ^B5SB:: ^.&\++X-7GX:$U-*
M++<!(N\OR]4UX_^<N3FLY],$K:F=3^YV;KLR4BFI(U"M'$<Z)H]DL%D+)\8F
M[)T.'5+4R&]*XQP#[4'%\]H_%'(8.V@W7Z*XZE65$'=DR^JQBRK(%+5@%#%+
M- HIAPD((M8I.2*FNHN24.9IQZ.1J\.!/B@[OOKUU8E;OT^=\T,U0.:RJ:?G
M71CPT48K6&U&@;J.K*4:8:=)OD!+;K8,J;#MYUW&[X'E^H1Y6";['/TREWFQ
M_37P;@U61&MZ\ER_ N5;",[(B7Q-Z6M#3IZ_/,$GHD-R+O.=,58/\ [*4/#E
MFXM+ZQ>SM):[KVPS!<[?9%+WT&KUZM4)>_G\!"PZ)0D@0,G)"Q@[?:4X>:7U
MBP[N:OQ]\59O((_LXGGQ 3;X6Z^/0X'K0/Q\\>]ZDB>3V2<[]0<<K.S1>&4Q
MI2Q$C$@^M!3,"X2EP0BT"1RH=8;@+L$CW\5QRK!XC\RIUR_>A?];SA=W<A2U
M9\?[+53<6*RCEOF!!)J3U5IDN/<(,XHCP31ZV6&W+?1&X<@\UP.H)4,#OF8-
MO<X]NWK:<7YM^-PJ=AP1 C_>Z3OB=Q%?PH?YHO;]XGG3:L5\U)1D7V1@$24J
M@69!#7+,:JG! )*^0\C_]_TB7=EY*;MO[C6JM>K:+PNO&ZTT["=!<(I43LBL
M2,@1AP"<%"$2YUA,^N@C-[\A#CY\6DKNS[_9YOH5B,%S6=SN-"X>J,QC:P /
M"+J5NV][[HH=-2OL@HN6,.12T(A2'1!GT:)D(_:$,6S;O7-6:-Q[#G9US5XF
M$7(N'<H91B*_=*6-]/")!VDT$4S*8]\[>YW%1X)\.X)6.C;\"[F[LIALKE!%
MP9,4G"$J@D ^.H-24@1Y*YTECBE)NYA[X[#%WE.WBQ<.Q6HT;H /-]^M[=S\
M*%GS,>:CU!/OFZ6=S-_&Q;*9KKZY<8'LQ4$'=U+)**V!'1=F0R1$HR&(YV>O
MJ,]7>20/7AQ]F' ?3+*+[THB?-R\NG*I],Z<JU8K8D,@"3N$@W6(J.00U\$C
M[X*-3''-1#AVI?QHN/%02 \^5+I/YD,J?XEVOB.7]H$M5>*5T(:^8L:<J!/&
M3UYP]9J(UZ\H>_Y*O!0=-*JRUZ9Z8)LR$(XII:YCEE^ -78%=N0GVX1]M\L-
M+50F!1J%Q/GBAD<V6HZDBQIIQR./2@6B.SBURN0#+21]^H'OB#:Z.Y&7TW 3
MH[D*S7Q^/S0SOR?4;0?<N[LJ1!&5 0T"$RE0P%JC0&F$3R2E_& 1(_T$Z#Y]
MYAP!Z]$X>6]M[%HKL%HY98)$)()];A4)"%8G0\)C)8TB+-&CCXXMP4V'HC4:
M/^P5&-'F)#['GNN0/$K6:L0\(*E$?H%-:J$8T4&0#KI5H<27P_LE>D%N-*XY
M:_*3HXNKLXF]?L'J'\MZ]53Z/LSS:",5EBD$G2S08RWR3 OD* A5F0\3!!'9
M*_CD]//>6:A/_$;@I%N6Q*TTJKMR<+=CL,/:KD2P.@5A85(2D(ZY05%I H/!
MGH(ZBH7H)S%=4=DUC*N]&,3CLF8V>O-KATV3@]%VA6JU;@.T#J6H >G.:<YH
M[*)$PAB)M&4JTNA"RQ06HUY&+L]J_4 Y+DOMH8+?KU5Q+RS!(,^Y-"#9 ^P=
MD<J$!*.@<TIJ+>V@716Z0ER>;0X%KV2L0,%<X;]/F^AGY]/ZGRN@BCT&^F8:
MEO-%<_4NGN>E^[<X.V_LY8?:WWK[-#^X7 -IJ?:@UKR \D!U<YQ$K0%[#^0L
M[>0H27Q[_=+W\ZN;2E?#\QGTF+/<%.AB[+"6+X1L#^NX7:SR7E&<.$?<&[ !
MK/>(1A61TSIJG*AMZ4H9>$1O[:=?[2(VM9UDH7R:;DZ,VHSST<J5)1RV9,F0
M35FL4T*19)2@H#RVGJID1 ='4JE T$.G\T'<VP!XE0O07!.?G_*8?X@AFP'[
ML\KCM2L:8J1*4Z29-$A(!CLW=[!?DX"CMA8G$@_GE5(AEWWS2J^ %5!PUF0/
MO>VL3B>'5V&NNX'%FE_(O#I-ZQ#5Z?F=T]'1-Z9?(BC6\1'BSNS5]2/ARZTO
M<;=LHB*>^D!$0M(:!;3 )T>H1,!T%BN!I=$C/A_6=AB_P>R\_Q0G'^.OL^GB
MPS;9=6B3E;"!>PLT.B\H@&0T_$@!,0]<(:4.1![_R]Z#L,5L-(1+;9=MA_2_
MT3;O/\UZ8+]U2Y5QF&/G"4J<>:28" B+I)!4)C%B G6NGQ.9[X7K#@?V*)D-
M.NYC'_C25D43CI[FBYB)8J2P,2@FQV 18NMXP)2'#E%Y98YOCH_A#H3V&%GN
M]6RYS0&Z;U,5B4&)G#)7)).AD0EQ$C,T6C%O$G6VE08R9B#6T3'<@<@>);_5
M'_N2<+FI2EL=(B4)61L\8A9DOO9&HB"X3YPZCDD'?BL36W5\_'88LL?&;R=I
M$9L>F>Y.>Y7CA,3H#:(66\2$="C" D4N8*E76T 7]UF9.*RCXKRN\ [N0+EV
M./PV6PSO/#F;36I?#]_/T*Z@MMZ9P9U%OV5"XFEZOLX'-V!/<?VBW%EL5H&J
M8SN@_KZ2(S&<?(09.(^_+2]<;$[3RWJRA&]7),Y/EXOYPD[#YL2&![94P7[!
MM(D6D>0<4I'GH$[8480E01NAJ,>MK(^"N#PVEJ^):/;%9W>+E:(VY\A).3VP
M0=XSV&J9IDA2';GR0HLN2G,99]2@O#$;"^=2*LTCZ#T8S',[WYH89J]VJN16
M[]\&I(5F8,("_$%&P,,D3:GQ$@MR.-^5<4>-SG<]HCNX!G,3I[HI3KC_G7!3
M;V3LW?#14-WM<0/;JE6<<AD]Y8A8[A$Q(2"A0'5E-'"K(_9NS,07CY*^*]O!
M]HJ5X3XHHP@R@2A$O(Q(2DY1X('IY*2F79S997:M_J9U-C!VI7:B$^^7%\O5
M\P8OXV43_<UC'Y>3N YN.KF8-8OZGZOO#[E^T%<7E7+*,JL#B@[$+/9:(*F]
M1_ ;SU<64^J2=Z-0D/A@+#@BS*-L9(/;D)LZ'=J _J^E;1:QF5S=BB_\?6J7
M 9@JC-3MX$!O[7UHQ-=AFF^OPW*O+Y9.%XWUB^=VLLH+,OCX=Y-0'H27]=R>
MGS?Q?-56CG1:E1@!BS?Y'SLYN;R<U'XMTHZ B/)3,K G\F&'9YD%8;B3?#T[
MU-EO.[RC\B$9MX*K_W,9SJ_]Q^598!,98\ Q-..]^P!*POO87.0 PG4RYL'A
M?K>8^3\>7/$OW=^K^>7E2$,MEZ]R<_]OY\N<D>@,_AF)@M6W^8N;9! 3.Y^O
M%EP1F;^%J-/+_'&^?N-P1X1I&5+F8&Y<?SP":EY]CHVOY_&LJ7U\FZ\'CD34
MX*(Q]_IA-@%[<9Y-@L6 -VT>]C4\J-F$;:Y.TZVM#JS*_&Q</3T??J]KUW_K
M[/K%*"HHNUO1<_V40HOLP\4H.A;>&5I _'W6_ '=O;"7]<).7EM_+WM>N1YW
M3_S:59-_Y!=-_^U?_C]02P,$%     @ DX!-4([)6)>#;0  T:8% !4   !I
M<F)T+3(P,3DQ,C(X7V1E9BYX;6SLO6MW&[>6)OQ]?D7>S.><X'[IU6=FX9IQ
M+\=RVTZ?F4^URF1)8H=BZ11)QSJ__@5(%BU+(EDL%HI%)5E9ED064-C/?@!L
M 'MO_/O__GHW_>%+4<TGY>SO/\*_@1]_*&:C<CR9W?S]Q]\^_J0^FC=O?OS?
M_^M__/O_]]-/_U=_>/N#+4?+NV*V^,%41;XHQC_\,5G<_O"/<3'__8?KJKS[
MX1]E]?OD2_[33^M"/ZQ^F4YFO_];_.=S/B]^^#J?_-M\=%O<Y6_+4;Y8O?MV
ML;C_MY]__N.//_[V]7,U_5M9W?R, , _;TOM?"+^]5/]V$_QHY\@^@G#OWV=
MCW_\(4@XFZ_>W> E]>/QV_%B6^#QP_3G]9?;1Y]5_0=>/0NEE#^OOMT^.I^\
M]&"H%/[\?W]]^W$%R4^3V7R1ST;%C__K?_SPPQJYJIP6'XKK'^+/WSZ\^:Z2
M255^+A=_&Y5W/\>O?U:C4;F<+>8?BE$1]/!Y6JCIM/PCUCBWQ2*?3.>A/:MJ
M;ZOB^N\_3JK/BX :E! A$3'[GT=4L7BX+_[^XWQR=S\-X/W<NLG5LAB[K_?%
M;%XT:=Y+CZ=H2G/ ]I1*T;!/42O'MNO[0ITT2R_GDUDQGYOR[O-DMNK+\W?E
MXG#3#A9,UKSW5>G+ZBYOJ-LCJDC6Y _AD?MR.IFKT3^7D_DD?GA"\QM4ETR4
MCWF@X%5XW5T^&YNRNB^KU1?=2'9\[<D$;=9##Y?LI(&A^KO)(L[;<Q6!F2W"
M#!]F^LGA%C8HFKJ)#0G1O(:>&@Q/;S'LN<F?BJ^+93X]O>%/*DK=_&:]K7$%
M'35W-@^C[#B:R3J?1O/IXVU1+!HT\T#!M,U[GU<!H=MB,1DU8<(QM73>\(^+
M\&]4Z-5U4.Y]5=P&2V?RI7@35C%WQ3&-;U93.@'FX;WY_-8'0_LH@NRM(&ES
M3\#X6>FD#?VX*$>_WY;3<5CHNF (+![:-GIW39T(8(LJK+<6*];-%]6R'JG^
M3S&^"2.5&H6O@A%3S'T^J?XKGRZ+J^MO99K.D]V^I5_!?\DGL[?E?&7C)9.[
MR4OZ%;O1DJI=;?T*TFR>;EE=-Z)$92\FBV55-.75SA)=-Z@9#78\WTUC-MM_
M01DN6$^+AS>SZ[@2C@N7@PUK4+:31KI0NGPH"EW,BNO)HNGX<*!8DJ8UTNC>
M0ITT:SO2_UKD\T"<58<[U*R]A=(U*\S-7XIJ,0D]/P+1;$0YOJ9T C2D8Y.R
MZ1IY JP)</RE+,=_3*;3,'1<A35%]6:VR&<W47%J/F^PHFI:OI?&^F4<F]5=
M&:CWK]7HM]F@;4B,KNKO1=CZ^XYDVU%=+Z(\_;LCD0Y4VXMHS7K[<;5TTO#U
M*O%3_O5PZUYXM.LFQ(V!<O9X_1H^/J[SMJNM:T'<]74Q6FQW-\)G'XI1.1M-
MII/\B"WX]C5V+=#ZU[AHTT4P*HOW5?EE$D^U?5D]>NQXN=I5W+5X[_*J6JV'
MCA=@5]'.FU@L;'%=5%4Q#G\?-4(>5TO7#6\V]NTLT'5S?IM5H>/<S";_6D%P
MY!KFZ(HZ:OYX&=;I#Q^+FV@!_E*4-U5^?SL9/5KAA4GCXR2TYGHRRF<+$YX/
M#:T:"'1RU><6\;BCE<Y?=&[Q/Q1?BMFRT ]UH8>F/2[9*SN")+QD458'-Y.?
M/=CMZQN/#"\_WVUCFJKVQ<<[:<K;L!)M/-&_^'"'S?@U#TNQR>+AZOKJOHC3
M\.QF]<7;2?XY6$:+ILIK5UN'@C3:IWKAT0Z;\+Z<3IHX++S\=(<-:<;QEY[M
MI!%-6="06BVKZT24=_'=Q=5U[05SJ*V[GN^F,<5B;3V]+ZJ/MWGC[?]#Y3II
M7%AV!.TL'N+>^3^7D_LX(QYJV+XRR1H%&Z+6I&RR1I[0QKZ:V&R0.5RRDP;^
MYS*O%D4U?7QB\]LL7XXGBV)\J(V-"J=O9D.='U-'^D8W8\$15732Y(UY_6&]
MO(QOBZY453Y:;#R FLX]1U?44_.;P7YL/8D:;R?S_.:F*FY6>K^ZWCS16@7-
MZDLDS)OX(Y^J^_M@OAVS%=FBJMY$:$NG0S4E$J"1K7^@6**FO8^]*SH4QFWR
M\23NG3==%K2J+)$8C_8L_F,YOCGF5+A593V*T5X=36I+)$C;#IJ@.WZ\+:O%
MIZ*ZBWLD\\4QU&A0M)LF1B=('9:(XWB"5<SFC;Q_]I=*V# WO[]OBF#3"A(V
M]]BCGN-J2=CP#_-E]-%['WZ<U/3=]21L_.K3^,'F_-5,\_E\-1H=88-T4'5J
M$:_N5R%&&P_*IMN/K2OL2YSY?'FW_K4[B7;6V9-0[FM1C2;SXGTU&14?\MG-
M:2/"454G%+'97-ND;'>-/"HV('$,P//JCU'[OH+=-&]Y=Y=7#U?7C\RU3;SX
M9';3U/H[KI8>&WZ\K\BI]?8HW-&FQ4FU]BC8RAOM*)>34^OM4;AN^]09^U;#
MD;]%79T(L4I<,KLQ^?UDD4]]'EW7%@UP/U0N:>,:TKUA\9U-S:M1W=K-KX\;
MO$V/,IDM?AY/[G[>//-S/GWB[K(C 4N=4R4F;Z&K!C\JV76CPN\QLK.<_30N
MKO/E=-&RB3OK2=C@\BZ?S$YO[W?5=-[<5>T_W15WGXNJ;5M?JJ/KAMZ&^JK1
M\G/QTQ::ELW=4]/.1@?23-:[2&_#GYNG8[NZRNZS?G/Q=5',QL5XE4VH?O>T
M'+TDZ$K(ZWS^>27IO%K\' >1GXOI8A[_6@TI/P&X2:WT/\-'60S^J#VQ_G.9
M3R?7#ZL O74K[60^FI8Q,"3(6+Q9%'?;UDWSS\7T[S^&EF2MZLD(4$HQK1!C
MPA-(&0RCG9>8.^^)!.9[&*8QT519;31P/AQ6\]:)&*SJR+#DE#J.K >* VFP
M0' COU76@B;R?^.@JD8_E%58.OS]QVW*B4T_.6J8CRG >M%JV0]N0<3PP:J[
M_UNLIAC__<=%M2R^?5C.%J&/N>DJ]BGT]+6W8ANB+><_W>3Y_2.R;3YY2KC-
MQX\$WXX! 8(/Q;RHO@03*0B@ODY>ZG''59 ISY4(<"'"%*+*4RVVD GH58]4
MVS/2MJ/>D:0H>P!PQ;FST\=^9R0<39YU\<P@AI70E#NL#9+:.>KK_LP!E=F+
MME-2"NVTV[X1*)5ZCV+/20C^F3AT'NY\)]IE4N=8RCQ?5\9/LFT3KLNJC#LF
MHZH83Q;S?#:>A$]GJ_09OWYGRC^BPK%59((*0Z12D&NGO D20E5+9;EQ?=+A
MI67*L5PX5EEE+[AUPH;[JAPO1XNJ6"RKV1$4>*E<IB52$$A&G?9:&0(5P'7[
M$>>HM=[19>N] [#ZFBVVS?9E9<OEY\7U<EJ;9.^KXFZRO)O7P<7?5KC[+-B6
M-69<A[$V&'90$ZT)M9 @C;QWEAG ,1?#&43Z64?UBV=??/NU_+):EKV9[>^*
M'\KI- C\1UZ-]W"M16V90HI(Z[@./5E:(2VRNM:#\!(.9]#JEV?IL1R&!;SQ
M!&YM F_*9Y9;J 1PR#NGI%4*<UG+;C3J<[>GX>275,-'6</M,!P&?^J?WV*>
MBG76YJK8-U2UKS3SC"M)(7:<(>"TX]2[K>4@U0#-K.$PK4-@AT$_<YM7-\7X
M4[D^"=],!*V)]W)UF?%$& -I0(-@P:QUDGV;1$[87\2OGW*=0#HPLIERODH2
MN/:7/)UMW]>7!10$$ !+@"D04$C*MAT1$$5;TXW\B>AV$J;#X)LMXKHY^D.V
MWZ'<5I$)00V&TCO%-5><.8C6ZW@/8%@+Z=:LHJ^?5:UA' :1U/B_EYMXB]9,
M>E1'!IAD!%B)&>5"N/";5#4&5KKV.YSL]5.I/8[?N/3O/S^!,*QW?^_ <V/W
MK45;+XU./$0.WD64[G4O^>5U^+:&MP8E?N/>ZW\2O[OQW3WM'7^.'AWK=CYJ
MTML]_CY-BF6ASS)IL<:"8^N%!LQ(3*7ATEF)(._,O>=H:>,U;>/E]%$:DD<"
MS/7#H[]V>?NTK2HS3%''(,72$ZN4M82 #2K*8]3G4>B+3C_=JK;L%:U!N_KX
MJ++B[>1+,7Z:=54__)K_=UFMPLH.^/L<44NF./!$&T2XH1Q:$>Q[N %/4X[:
M[UPG<OI)SY*R+S#[LFKW2/"M_>_RN^*@'\>1-648&P$<%C1:9QK'LR-1X\&X
M8,-V"TJB^>;LZA#1OY@V2.>A2R38>8AE)_-%-?F\7 6.3VYN%[N]3 X5R9R'
MP?J0PECG'&7>(*AJ";7'?<YX#9?=R718)H&L+U+4>6 _%-/UHNEV<G^8%WM*
M94&FT,L8$EI!@0TTUKB-G 8PTOZ$(MFA6%_4Z ZUOMCQKHRQN/?%HE W5;&^
MLN0@.787RHS%2%A'@&2"&D2)8J264E)#6G,CV>E57]SH#+2^J/'"BN' BFI'
MB<PX14F8DS4 . R$" .^I;ZCMOT9T_$#QC!73]T =TYBK,_U#UNL!\MF5# I
MF#)ASN08TM Q.-O*C-C @R1.UF0#9G2!UY^#*X-<SPR/(ATYNV]WX_?[MC]Y
M+$,.40@0L,XC:J4B4.*M8208[E.)S4R&#A$O.P.FKQ[]/G]87VQ7;F3^YMWU
M2U7.]]D'AXIF.@ ED WF,$7Q )08@^K-< I\K_L3K:EP^MY^QSCUMM+,Y[>U
M@Y\/2#W"9-]*<W>I3#HBM<8&!(M*8\R#L+R6DT XP)5F$CYT!U'?T_ZCP]H/
MV_N7WHQC+-;U)-\NM&KAU&Q<W[0P*=9)YXKQNV*A/L]7J:0;& L=OS&S'!$(
M+'76.>NU%(;6.XJ6"=W>Q$BVH$U"P6' >XGT777>]8T$7_+I ;>HM"_.PMQ@
MJ<?860LDQ @Q4V\T1$[T:B\?1^:S\2YA/SA901?9'995%:\]7SW9+*RQC]=G
MADJ/(."0>L0)DY*A>EO/8:@&;&J\RJ[1C9HNL8,\NR O<8_8OB\S(*@<&@RP
MX=QH&L].:VR1I^U77\E-G=?8!=KJI2_.U_=?[Z%I_4BFF$8 X=!?/:;(41;D
MJ25@2#=*3]9OD,G0F-42RLL< .M3N+Z,@D=OS"!5$&@3LX&HH"?)!/<UO@"[
M]B9RLLB5H5%U&)JY1.:OHA;C.?%CZZ>G/O#BNS,:AA2'L0&(>44M-(;5&XU.
MD&:.Y_T&W[SFWM"%CEJ?[K04)'])D/4C;V:CZ7(\F=WL,27Z>G4&",,<$QE6
MWX)SS(PAMD91&=G>^.6OG>D#5=$E3@";9>_C+^IT0_G#@?"97MN12<84T8Y0
MQ6),*H,$U.MPCXQJGX)%O/;N<@GZ&L0D\:)0+T6-IIPN#C8BXXP)@;3R7C+L
M%)5 T!I9A67[%#'RM?>$P2OK$J<06UP7 87QI_SKHR][FC=>?GF&K3"8T  \
MHT(*2QBM#QV])[#]]@\$K[V/#%9+E]@WOBV='GVW6E3UY5BPLP$9U1XPKN.@
MA&C WCF]G: 9E^TSIL"_SF;/J:E+["?]3QR/QR$H+*>(:VYA&'^0C9M\-;YA
MA#K!'_2OH]A>53-PZM?["KNTT#WU#[TQ4SBJV7(>]S8(= B#.H+08T#;;[?"
MOXY@>U5-7]3?>H7N#F+[1Q%C5 /B7XHJORE^FQ?7R^G;R?6^O:13JLV0L H2
MB;D!C!(-#65@:T<"T7Y!G/RPMU./R1XQ[#=QP?0E46IIX1Y6-2F>"<V4M0AC
M!HA01 >\-Z=\'AB/V^_#)S]_[90]";#JVS'D_;(:W>;SXMM]I<U2 S8JGW$1
MC! !3<!3$V8<-4K6LNM@E0_W9+)3GJ0 *W'NOY<2N7W,IV%Y-;/%73X;F[*Z
M+ZM\&U;U>O.Z::J0U59B2 AFG!/M.-90(N4H@_9/FM=-$PD08BX86E(SQH5E
M;H,*MA2V-R#ZS.O66+6GYG4[#JU!YW7K+N, "H,:],0IJZ@6GD+F10T*<;C/
M&VW29AQHK/V&&0>. ^YU1)$SY CG1CGG" FFE)*>;&0F2)F!YU\[69-'AY.W
MP^O/P97S<*1EQH'S4:0C=X-=9N/^! 3[2V5,*:@XA$PJ9(B &F]G;@*L&]!M
M: GT4:;"J>^L$D!+C+WQH6626:X=H%N)H9+M$U'U&3K>A19/ Z;?K:4^4_I"
M*@GV5$@C.;7*$,Y@C0-6)SA\#BTI55L3,1V8 R!5XD2KU%!'K(BK/H<8@P)8
M5>-A">'#-BF3:/[$C*OM$/V+:8,T2"^18.<A5O?96W5,*J6Q%8+'\1]I+&L\
MJ;=@@#F6DFGRB.RMQZ'6%SNZ3/@<)'2  ZL1 %K$!:#5M80ZK!2'9S#WQ8N.
M('L-"=J 8= 1)Z@A2!-O5%B#U!(KR]MGR3A/@K:VF_0=XS1P1ZD!9N5"T"CE
M)#+ 82\!5V2[$F:A2PXX6TNG/!P&O)=(WR%EY?*&"TR 4P128R"CGM3:#[/4
M":F'+L[SNS'O^LW*=9R"+K([##0KEU#(!2I0XYQB83+%0.(:>6-T^ZB(BW,%
M'T37Z$9-E]A!SI>52WH/XG4"F%GMB!',.U]C*ST=X(T:K[D+M-7+)7+^N^[>
M9YC<\Q=GT$C&45 ^4%0BQXV.WI)KM$58R0_7J?PU]H*3%72)W>%1V*SJ,S/3
ML_=FR",4D)5>&J!9@)<H6F/-/6A_G\[%Y2@;0F<X53]#3-@HC-= >..%<099
MQ#VO/8,XH+S][7\7E_>K+<-:0GF) ^.Y$S8B(AR$RE@0#2\9[]7;X$NT;V\?
M7USBKB$,ANTU,XB<0VIXB>DLQ(0J19"0P@$A#>>@1A$&O;;F]\5EVCJ6WP-5
MT24.\<\S*_6[%'R<A(!C92537"BK-",08;)%6W'2/D/OQ27<&L* ?[*"+K$[
M##F1$"=4V,@([.*]@=P35SLE\#! M;>'+B_9UA#Z1V>:NL1^<MY$0II)19T1
MR&.L(,,^_%WC&R;H$Q()_76PVJMJ!D[] 282L@A*8JRTF"OCE0!*U2?67/ 3
M;C&XO!Q:/5._8]6<D?HZKVZ"XNK,$K^$W[\!H.YBFHGCF-V@PLPZ;)#SDH*X
MF-)846XVZ @/3SCP/\]UBQTZ=G6/WI\Y217A E$FI?4*.:"L5J:VO80A%Y>D
MJBW/>L3P-26I C%D6@@0\^(ZX(%ADM628\(&? #7*7L28#5P4^]"KNTA' =;
M1R.)[>K&."ZV@0E"!WMHN,=W@W6/[@+H,R36^O2=&^>3I%F;MISPRO"JN\DZ
MR9B*.0)6F<>*V6ARGG?NSQ'6QZOA&=_]*;QMF4_/T8+D-)O-R^EDG <[1.?3
M?#8J/MX6CT;9_M[X/H_=_[983$9)H?[V^H^+\&]$_>HZ:."^*FYCE.V7XLTL
M/%[TVX1Y:$,^O_73\H]^L'_\YKT"]Y 2KV[*=F+:,\<_?SCSCC!!A- 2&6DP
M)T!&;SDFA">2-[M>-[%D!U/Y??=@!H'G'G"'D'<FS'H >[:1"%'.^PPEWINH
M[Q1E/$W/=PH"@TZ^M^Y=WZ"*VIH<3,"WIU3F#63 ,J,L]3&[J<(8UN#P4U+P
MI$["UU+'92IH^EH4[6CQP9P5>\ME"&L'N$988DTLAMJ(&C\,/=?#SH72B1:;
M,>,DO%XW1\[#C0-93(9'C?-0PI3S8)NNLL4=SDSR]-DLM)U+M+[)$S#J8OQ8
M+9,RNKU_6[)#VHYT]#3[R(G(]*7M#\6\".^*,;*V^%),R_L(PN:&O8/Z;U Z
M<\BLSH41YT(SI*%S8"LWE>UW5Y.=7:9A1/=8]<61C\5T&E/0S\:_YM7O1=PG
M:$J00T4S!IGSUDL4L -A-+7*U",KID@,,!XR#3LZ!JJW*)1B5E1Y/!Y7X[N@
MA'A*OYA\*9KRHU'Y#&CM+:32*\:AY1@(I>KE'5; #^]X+PU)4J#5WT3SI9@M
M]WJ.U8]D##BD,(*&<B0IL  [7TL@I.@U"UXS?7>X)]$2A=8!%]%2*:_OJW*\
M'"VJ]<MW14B\]&RF%7,JK*2EBY<:<47C'2>;=BH !IB]IP-M=05'OU9]=&>*
MN_T?B^K+9%3,/Y;3Z&Q2+2;_6HU/!TW]0Q5DUB@:1!:&"HL1"G8NL%OIA7?#
MF\\[[+I),#H_0UJQ(D.<"*:A#78L$UH'"06MI016M_?7339I]\*$(W'IS9"+
MB>[>5^7U9)\;X*.G,FT(\8;&K50*B8QYR&MH*!&P_22=S&NF0_VV!Z(OA5[=
M%]$XW"XCY@WR^^TLDWGEO>&0&,8Y(AIJL%U]4(B&>#];A\KN"I9![.FTW<W)
M^"H5CF5(6!&L48-)F+LVLGI%V^_C)#/*.]#;,7LX1R)T_MV;5OLVF8B+5:<I
M"<L1:.-%T6"+'0T]:GCF?O<\Z R>@>S3M-^AR2#B$@*OI3?:6^:81ZZ6USG1
M?O67S.#OG@[=8M1Z)?]XD5%>/_7A?5?.-BO5EQ=ZQU:1&8HX E)AC[36'@,@
MP);I%+4?")(9^-UI/C%89S,2CS$.,TP\=@B1@!9A)LC!MMN8C)H3TC8G6P%T
MW_5/1:5W3:]WIM_NSQS_PM,9=!I3H F5B'OF 0!;ZX9YQ=K'V"3+S)-B"= :
MD+X4'8:=\OO&'I[C=Y;)"#3.$8%BKA^)+6$6Z%I&QL@ T]5TJ/2N8.G7F2=R
MTP=8UA[=R]#V#7GC?6+%=5EM7(T_Y5^+N?L:AK^@DLDLKQY6:,6@B% R0#Y=
MB;THJF*^;],@X5LS[:6*&A.(!1UB#R3>CJ5$^_;;#LF2PW1(O^$ VR^!@R2;
M?J:#7;U_0W)'B0P2#Z%P/"S#+8BW37%FMV.S,R?<^IDL;4KGS#D5E=YFK&+1
MR"CY[KD,84@#;[TRS$%  5-ZRV!K:'N?@'3I0+J<FD[ HB^]NKR:A3%G_KZH
M/M[F5=%@ WI7D<P':<(2BH4WH4!='=TQ-Q)R(TY(FYXN T:'VNX(EG,I7N?S
MR>@(K:^>S[20D&/+H1,*"$$"=O4Y&?=A-3V\_>;3U71 [VV .9?2[62Z7!3[
MSHYWE,@4-M :;00"A%-.L<*BED]A9H>WP9Q<\>V@Z4OU3W)*O%M&M*ZN5RV?
M7RT7\T4^BQDV&TP QU:5>0^IXC0&;0-F(7;"HRTB\)2L8)?@<)(8KJ$1Z-!$
M<E0]H7-"QAP/!A)D!D+,F-]V)HE-GP%M#9F33MTM>=4&R#.3:C.4/A/E>%KM
MJBG#A"".XY /(;0V++) W9N%9;#]TB39!'9N8G4$9>*,'+LBV3\NRM'OM^4T
MZ&@>+YI;/'S?K N*:@_:-%9JJ;CA"JF8CT5A&J-2N *8-Z)N8LF.C&H/5+$.
M4QY8!#U@&OG S[5$@CO09T#:L5'MC96Q/ZK]. 0&'=6^E6S=S6("C7*VRF"R
M/ZY];[F,,Z\ 8)#!8*%CJF(4U@8@J95J[[/<;V1[8SWOHDL'X/2VVOR^J0?C
ME5]\/J/6"T&U9=X"$6P7P[FH95-.@F''LG>DMZ=+SPZ1>EUL. \+#D2M#XD$
MYU%^S&-5SE8V6(-X]2?/9DXJ8+32WBHGG L+;X-KF1QQ [RM^43=/ M4. V1
MOK2LQN,5POGT?3X9OYF9_'ZRR*<'-;ZW7 :TPAPAZK'R&D !#6#;_J%/B%%)
MM]78J?:[1*<_[_9%$+D8UWND#9(4O%0@ X9;RZ@P 2' " 52D=JZ5EJVOQ0O
MV<9AM[KO!);>NO]HM+Q;3N/*>Y6Z\X74>8>'@J9U9 0A"9".B4J)@" ,@5C7
M& 1$V^>O2>;9VO&PD BI'OU(JB*?%[98_WPS>[Y%\Z&<3GU9_9%7^\ZHCJPI
MDT)3@+Q&BGBKN;#2;?' 2@TP_4V'^PYIP3J#/;G>CWPSGR_W'F3N*)%A #'S
M7%LI&85<4T?D=BAUIS@MI")#,@WNMCI/0*RW"*J=^[LO;C4]?3C37 J((-#
M>,.<=8+5&S-A5>:'F0&I%QZ<#%:O%%B3U"ZK8"Z]+ZI)N3FP6'UY=;]RR71?
MBVHTF>\=+XZO+-...RV@Y!)RB"6$PI M*E2T]V=,F2:I/PJE!//,%/NO?+HL
M.F+8[KHR;['2SCM%M1!:H##3^QH3%Y9[PS-YSTRPSK#LBU_UQ?;1F ^6_#JY
M957ELYN5^?>/R>+VS6P\^3(9+_-I0\NG=9V9I=1+32SC$B-CG8,:U!@1?\(]
MR,EBQ_KB6U^8#F%<.W3)ZL&R&0J=36J E B@.B,PD[:6&3EL6O,H66**(8Q;
M;; ;A*GUH9@OJLEHY8 1'E,1H7?%XNHZH'5=3!;+:F\,Z\EU9Q X(J0Q88#'
M82W,C1=T:SL8V=XY-5D4Y" ,L038#F'\2D/'QE5GT%A.F<# 6R19&._M=K/6
M".C:>YHE"\\<PNB7 -K^CL'^>SE?7]KSJ=QQ>A/COJZOB]$BA@W6<0/?VQ-[
M#\PZ>4,FI%*(,">T5)! Y=4W_)B  PS=[(N:YT%X2 Q="?3YJ4 ?BO5E<<4F
M7=ZZQVZN>(L/K#KOB=0]Y=49]U+J>!& P#HLY2RAIMX8-P;S]I-_NJC2(9&Z
M1^Q[,PY6UDV4,@ 8.FU<G45LPX03/CAZ\&U37<:UHO%.;$^,U9!ZQU#ML&&H
M NT/LM-%PO9F!:3'\S#3=F1K6DF\:E Q'7\J3?FE>-+$5<^HUE[FO]V'CA#L
MEO#QI_*) ?-;T-Q\YQ7>Z5Z68:LL81A[SSD$'% +MWT24SC$>^E3,V\P:/>6
M6&B'@T ,3%\9U4'P]S%/5E#P(HCV>;F(WLJ?RO75BWL&PQ-KSBA&3DM@/3+*
M8^$Q][S&2SHZQ-# OL;%?J%M/40V,2ILZ$:CH+CY2_NFNX;#DRO.D,!&:D<
MHP@;#;C0]=Y93"-V KDN]L#D+,B>>YBSP5K]LDKV./_/93Z=7#_$,+GY_RG&
M-T6B\>_45V:$"B^IU4):J@Q7SO)Z(K':H_:9W.#%'[X,!//>?)W6;GXQ5>EJ
MM^'J^EWQAQJ-HKT1]\RJR6PTN9\&$-:KLJMK-2[O#]T4T;K2S .K8H""D-X;
M&&-)I:M1XMBU/\V!%W^<TQNJO>ZK?RCNE]7H-J[!U"PL^A=A:GCA^.#0'GK#
M:C(%J?,F8"\$X@S+8+C4_F46A?FF/;]>Q_%-&AR'Q:A#NXA'U))A9YV$+A@L
MTBB-/8.@/K&RDNH3(D=?QP%,$AC[HE.[O'0 (4"\M-9J YRR!M)Z:62M(R<,
M,1=_\'$*4(E3.WRS[][,YHMJN5K !,I& R]:>J/P5:BTF/M\4JU=**X?V80V
MQM),Y]\WN<>T#X^:LFW@VP89(/:6RQ"$QA*B#;3$PK"P=X)B0[3S$*.&-[>F
MD7?;V/DC"70^S6>CXN-M46PO7-0/WQZ(&51C\I)/H;GZ8:-96\PG-[/5LX<2
M2Z1[:48,$$!SA: A,:.*L!BOD0;&,=EGKKN]22HZXDLY4&#[S'TQKQ:/^![^
M>LKU\%'V(7K][<AM\=WW&0A&/27<6XN0,DP3XTDM*)+JA/VHHQET5 Z+(>B^
M/!W0EC9)<Q+LC&Y\\D2FO04<A*YHN9#.6,.4VK3;>L'\,'-:M,3^J>9.PN!R
M='@>W>W(1-&OZOI3V:_YU\G=\FZOTKY[)O.,$:(\"*T%DDK#J)?;MAO<9QZA
M Y9_:]3+;F3O+^;A!;/^EX!,7(%L9XX/Q72=3_]V<G\@D52["C,'A"5 AOE(
MB+!4XCYZ%F[0"6N?/B, +W5V[E4#??'SA=8>3%ZTLTP&",),$&N9%C$&!)@
MZD9&*I :YM3?EV++M#"^3LH,RM*X.*:<Z5 OG]_Z:?G'IMV'DV*]]'RFC7)6
M$J.@QD9;016M#3E'C!M@^OT.]/3TS*T#9,YIZGR8S']O8=#4Q3*N*'?*<"@1
MYU8Y;EQM%CK!2'O_ON,=J%ZCV=(2Y_X9]1B:@Y/-OF(9"6M#%P#C$@ B)3"
MLUI2B#2^/!/E>"7N9$9G>+UFAER,17)>8IR'$+ZLBC!>NJ^CV[B[L,Z,<-
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
MZ+$S-(X=C^(P.::N%T75.=&^JS4+"E&(!(0894A1 :R1-4[8T@&Z!PV(;:=
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
M'2_GB^KAX]H__9>BO*GR^]O)Z,TL4/)N/>'-QA_#HFIR/1GELT6=2&*0;=K
M]2FT9ODM=VSO@2H?BB_%;%G,?>CU+KRV"L/ZMHVK ^&P (G1:,TS;[:M,L-4
M @<H -)X*CFDF%A,/<4>*<F;.> F\CW8)OX[4KCF&3K;5)Q9@I &F$@".(W!
MHHS+#6*4LUYOJ-H;)).>$CLS>?: :Y\A-O-J\8BVX:^GE T?9=N+H+X-2/ET
MAU_$WN<S11T2!CL1;]36S'D=<RBO@&""X#YO+VJ9J3.M_LON06QI#S<CQM-Y
M*I_N//G>^WR&!63<LB 8(E101\,ZLI;),BF&Z1?1D9[*= B]#NT/RMMA2$H_
MS]+W73G[K5'NJ?JI3$/+O3(6FB"1 $"$15<M!W!Z0)X-'>GC>4JIEECT[0-M
MX[^SO)$C[,XR69CO&#.8$"&(L@(2IWPM(R:P_3S?^9%R&GUWA4Q?VO\F^N.L
M>)LSQ8,\:% ZLRSP75I$./;$&V2AU!NY.7$&M69$Y^>Z:1C1/49]<<.4LU'
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
M0@M(,/&^O4O&'.3I>^=%I^<LP/#N1T!O3&VNKRO!2&4L8\():85 *DJ@O33
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
M*%@!E%-(8Z1XB[\1':J*C>-LKE!+LK.@1KF _3CJ8W/)8 O6A=T*"@(",=4
M8J:\E-QYMS<U2(?CB7$<:A:V0/4KO:N$@VY"8%+B/0^<QCSA/7WVE>IK\V/U
M\=OT?K)<SNYFT\FN^P<#-#N\+5BE) "*,4>E\,Y@3B4&'FNHL,'X++.NC_$>
M"I%,?%, #,:!4AE503@+A*4:M>,4Q,#DV2%3S.,@,JR'Q+#L",759+7YK/N_
M]6SUK5'S./CY:GDJUO!8NQ"A8=) JS6F#!" -I>/$7%,0T;5D(&U9T4-]DZ$
MERM,1O2&,K5>=/5D4-*KSP<0'2W@@!/<4,4,8C(N=-NQ8<Q%Z4%U>>3VLEQ(
M1J3>%ANNPX)3068%D2#3?9C+I[X/<<'2\>V_YS--]J\,!#"F#&$(8N,H183!
M_3K.%!XRZ/R$!S,":R45UB%<B\_U?93+<LO] P[%K@]9/W4\94V&+ZX?'B:+
M;S=W[V>?YAMQS%=J.JW7\]5L_NFW^GXVG1WTH(;Z_,_SV*#Z,/E:G2@K/%2'
M?ITL%I&WCQTR"AV8WW[\UDDW\DB3(*DS@E,A('-Q0HZS.G"8.F4M<!ZALXZ_
MDWM^U"$\\'A@(DXS$))HITIK'.#2TUV/L=8Z_= BI]>7!?(Z.QI%^V]-KK%M
M;K+[^_J/YDRC287VKEI6B\<XW-.5>,][0:#60V6)H,Z#YHJ-98JUD)%HEA3I
MT766?ST 5D-9[,<[?]* /Z=Y<%BZ9IR>1_<7>,F4LNW(O::L;.\NMW@O8D\G
M!/^;.%2D3S@&ZF3R%?==N*L77Q;U[7JZ6E2K]6*^/!X]<:I=L-@*;RT!!"I&
M*,!&Z5W_B8A.4CE>7S]BJ?L#J[NP?;W8'%#]MJA7U;09\YG2/M0P".\)H@PI
MX81',"H#Y^T()"OQAO4 XLZ$UE#K0>QFM,56WYJSSU7$HO&NOVS3XYYA>I[1
M.A"ED8O&&N'$"TV<(P2WXV8<I>\0]E1\N!>[,S]05R=(T^^3]L(9K0/V$D$!
M,;7::&2UM8RTXP86RK)-SJR2/9<UG='[[V%/D<9FZ:2YTE6P^F[UQV11Q4ZW
M/]KJL;JO-]TW]7)UV$"]^!U!N&AP6:8W2S%5E $)=AA0XVA!%9I[D>S+\^R>
M<!N*.Z:.ME=S8[\11E-=["S[Y4BK  A63CJ*,%>&:BWBJ-MQ8FK2K=O+(Z2N
M9[?D ^AJ1#AKI3G2*D2D(N/C\!@W%$.$J5;[<7*IRK9/LDCP%"LZH_5VV5&D
M_5$:*:Y$AO5R53]4BQ]Z?M+*.-$RQ&60.H&$IA0((#%@?+]&*J,+S)2;17HO
M&9$5I2M:$KJ:3S\_3!:_7VY.?-<TQ/57:6BU=Y)Y+5T3];X;,0/$IQ_B7AX,
M6I1-T06EZ_&B[?3EZ\>+IH%P0?1&O:Q1'' D#-Z/6"D].A,C4: GF9(%M_\&
MQHS%["B$*-<AR&YF7;ZKIM7LL9E43UH>AYH$*BFVM$G:Q12)/RAI6\>?$:P+
M/'O+)[2Z%XP&V_::W%>QKX_5?%W]6AU.>GGT^4 8$1)Q@YMBA()3ZPW:C4W#
MB%YYAW&]R3\'0(G"7RY6SP0?_^NET..OPM\G_ZX7K7%\*$SG]0>#]X8#JYO"
MK"#^PX7S[2TZ(Q0=,D'V\!9D%DSZE.RODX?JYNZ[+AY<ZH\^'R#T.OI$3 I)
M(>'(V.@@[<9$X[)8ID7854!U?]"\#;$79=85(>U,UV0^_%'O1W'\7LR/3P:#
M=!R70]@XQH"SB-/V4IC!MH-;G]WVRH1UG1./]*M-#Y/_G+S%].R9 "S'EC@+
M(-$6 X"P0_OQ49)^5IS=1NI!3AV02->JIF+-N7KURK.!*,55M-6 )]$5](I@
MV3J$5CJ:[M5D3U/8AV9U1R3+?/B^FJX7U>TNX]*_9JO//ZTGB\E\556WOU2K
M57SDYL[$)V8G,O9W>FG E&F,/("8&N@M042U&-JFYE$YLVP&Z1V:8?N&+3T
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
M#\Z'02Q7DT\$RGKE/0)VKJO=H_JZ=G;YMENNY^56<Y,[Z]X)YR'/=D;DSG@
MM=1QSL@9$M,K9Q_-O1/]#HO!#:?WH_M'>T\6(<&2[,LKMJWP+EK@K3DME@_L
M<FXE?>#UW^Z+'L_*19'O89@2'&!* <"AMR^G(4%DU>SW/9@5'1D0,C+3G-BG
MH9T>L@-@BYE!*C86<H&ML%A7?RP0GOG%_@BE*7E7B=AW*.A*;NI(N#JOFJ)-
M\Y?@O..99/="/O&C"!,&88@CYH=! %+L#M!2/Z'>ZGA3E:I6F(4DI!MG-IB)
M"_H/FP'XG\]K^UWK25?TGZX49PRAEL[/$#O3FC^Z\%3S.R>66^]+,2^?#NP$
M=M&IP9++8FG")M]6ZOQ3T)"7 H1QP+P0^D'H^]1C([0@)*ZUFE\5T"+J?],Y
MPG#,+(P%I@B7]7'!PG.$%/.FA@RZ@5UTCK#DLLY0P@S?5H85'_*FV>;=5I2_
M%LT-__EV4?:^N:EV'&1>KRA.4C]*DC2) D8(]3SD[3%2""V.+[2Q61]H[ O3
M-G/4![C]Z;_L[FY;K+-/V[S-*JTB90?P%L<9^C&U,."8)IA3C3P^/(UU[X^#
M!0(\_Q#D4BQ,C46,Q7S1"<>V[SJC$\,1T$Q![_/-_;I+?8] OLGNZOSM-=[+
MY8<F:^X;_D=OBMNBR?ID&:*(49(BZ*91%- @CO>[9%, 0S.)R"K":=/1ML5<
MM[MWZAYL^\OM :Z1!&0WHEII:/Y0FDY&>X^>9J/.IS:\!Z^<#X>@OQ$(^I1)
M22<R\JEIDG:PZ 0U#0-B:6K":.CN_8QC%[L8NUZ"XH!'(\4HVJ?&* ;#WL_Q
M:+WRCL5+=N1W?KY\VE]LWV=>;@1V?"Y\YZ(HI8ONMN)>".Y<E&-%M/O@]7IW
MSRN5(OM4;+NB<MC\LC_?Q#\?IJE'(0TIH!XD7A3TAP5!'$7")V[U#=G+V@,V
MYPC<U7Y#VESG^"X2=J9GF2-[&7W,H#^5K68IU^_:&Y0V]]LV:SY#\+%-H8?3
MNH@1AE'*? ("E'C8(]@; < H3>1V!1LT;'WG;WOFKBJ[:1J>U+*AE^;?[O*R
MEIV#,TFXF.+-Q+2<](T@N_''<QET?NN0.K-=+R!.XADYM!")9>BB#<<JZZU8
M^UJ!@\F$89:$&,'$]W$"(?\-ZDUZL0M=)J>-6J:F. <Q7#,@JWUZ%(JIW63<
MR>G;B;L99M.S<S2=43 C["Y#L\RX<OF"!E5^1'7I33=?OR\3W<"EC$8XH7Z0
M^@C@-/(]$A(:^>UM*Z%@-Y+\JKV.TP.9;?3SF(<S/4.1L&7T!57PE9%&(]O>
MZSK/W][ENZR=]^MLCK7 P[OLH5NFHO?Y+[S???R:;[_D/U=E<]-.7$0A2I*
M<D 1AI 2Z(UPPBB0.J1B#83E36H][BMGC]SIH%_M:^WVBJ\!_I7#'7!:#YS>
M!:?W02[GVPN7J) M(%*RDF<Q2)944HWDLWIJ.6Y+45[;;C[3Z$EX-:WF_Y%G
MNX]?JU40\@HJ\7$049(2B"A)\(@B29EG0\1%;2].NUO@7!8J.XHM'!*S0FTC
M&K;U^6(@9E7E@5$#8BP;F^]+@Z6]4Y1>-1:M*"YOCOF*4AP2'"1\N.KC-* 4
M,#KB" A.K6FND/6%JFZ+W:+NB@7&@O(:C\DTVGLV'/.K;PO/E/Y*1>@[5& Y
M_W0T6(%)&RJ<\LZP\ML%C<B%'@SC.&$1 F$\PF IC&R)L)#Q96IP"]V>!(M%
MQ;P"&P_() )\-A:SZV^+SI#\2H7G^U-?.?<TQ%>!1RO:6WS)5R0%./$B%M,0
MT"0,8."S?0H(0WO:*V)\H=K+H5O47J&H6-!>TP&91GO/Q6)^[>7H3&FO3'B^
M0^V5<D]'>^5Y-*V]^)IKU1X+< .,W)1XH>M2E ( $S1@8= '5I;NY! L3H6S
M%KYM+9:,DEE!MA<@VZHL&IM9M?D1O08$6BU<WY=**_JH*-4ZC)K6ZQ5L328H
M!B[P$ 4@]>$X3<)00,)5LW_@TI@"7#0JI<HG'N TV?/MJ/!E[LT*KU':+6OM
M,K75@)P*!^'[4E!QMQ1%4Y(W(SKY:[DIZG7[1$F^8=_6_$?[!TM6.$"4>BGV
M@RA-0DJB) Y&+"R(0F-UK3*"!=2UQ]B='OSPU)%!.54/D0%MG20ZYH56(3#3
MJ^XI;E4E6#M6WX$>Z_LH(\Z&&!55ZA,H5I0F!*?0993$(&XW*WO):,T/8RA3
MP*K:L%ROGN[,<DJJ3*&85D[!GIP:*A!G1>E.,'-&RW2Y7(9::7M1F6UA1A1G
M.."]PB2&L4\2YC$$F>>#P(>C41HG3*8(U#1EN=H;KS*XJW;CPY;5OF=MNSNG
MMH=3G48T29AD+6FRP:\IA=K?(+$(J1JPR"N6+,6+%BYI9\3T2XTC31G[A3,Q
MVH6>%T8 >2!,""&^#])]P>8C0@V44!+69BNFKIP#2B,B)D.QEHY98M><E D0
M.Z6:'>#("YH"UXO6-!5_Q&1-F2GQJQV^Y,-+ZC3_U.!RP_YVSPU_R+G=KA;9
MGVE%&+L!A2$.7<]%2>@'.&EOO_)=G/J8BMY"9="BO8YX!+*]P_A3XV3EQNF!
M.@>DLYW-%B?Q3.^T$(EE=%,;CCV[[< 2=\*W5_6&'MY^+?/-+U7S/L\VQ?;A
MYVSW>]YTE\*T_[?"'A_,$<B([S$&:0 H]$;C+/"QS C+D$G+(ZT1I=/!Y&FS
M<0:@S@'I<*G2Z5YKE7,QH9R!;CF1-,.TG3NKA+@[HXV&R5^&+IIVZND]538X
M$];#)FNZ>]I['3[<6X>_%?4J#KT8</4%0>REF-L/0S3:# )$I610RY)M]1O!
M78W5RM$-?K^U"&4U3X]70:F;C%(YA9.FT(Z8G6/GG(89874ATF7&EZ>*99 A
M4:%Z8HI6MUE1KE (^# .N$D*70S3Q,-IW-M*W! @("-0:A8L"]/3KN3\UN.2
ME"-%]L1DR#YQ>O)SF3,K^O,B+6=T1X_&9>B-I@^5R89E>&#XIBCSUUSVZI47
M4.3Y:9" E,1!$&(O@2, &/K0Z.!0W.PR!H@M7J<#;'J4*!$ 0R-%.]Q;&2V*
MT#[/D'%/HLZP43X2R]!#&X[)#A]5N1-5SK]P47Y3U?7;\D/6WK;<J_;13-\*
M(X)P1 B) N:[*/5A&NWMTA3)"*:^-<LZV0)T?F@A_MFI2J=%V6Y;&(J2(Z!R
M\FB 93%5G)9@.3'4Y]:*!EZD[(STF:-[&8IGT)_*5L-4&7D>5BC:!PVK^U%G
M:<XUXK8H6Z5-LV+W[]GV/A^VHT9Q0+TP8LR+0X8#$+I1.N !OB>WBF /Q30C
MV*/5OZ\]]'T=<PS>:=$['?PKI3W[%J,E,QJ>.U!*(V8+,;(XLE:@^.+HVV;8
MEJ'/$_CYXBC>/K.B>D[S7?$E:XHO^>NR;G;W7>[ Y>9?\\WG]I7:-?^K#NCA
M1O[]HG04PR ,? Q C'B"\0!- H_X"4M=DD8P$-0(FQ#LJ<0!M7,$N]OB,0!W
M#L@?/5HQTW8/#9K/*,44P5N&5DSB:35]UY#3B[TJU0=L]?!RY8>;/&_>M&$J
MJC)Y./P J<H.TT=N*GD8P-.\+CZ7W<_V:[H^<2,W"3$$Q(>QBR+J>2-@AF*I
MTYPSPK1<01[*#:XJ!]^NG/'YT,X]9_3OROGT</1SSNBCTSJIMH-ESB8@EE&^
MD^C+)9Q) V\E ]D+RYD$M8"VL(S\M00BJL7U4['L5^^:U7O>&?-N3=\-<1SX
M84HIA)B@Q">I/WX;QECH$06Y+TZPX:>HFV*=;9V?\ZPM(VZ[I6*)O3Z2%)T7
M<GOL2*XWJ1$CHI[<Q2/EY+][JIJ/.'A!X-0XFE>+%#%7.JU"LH?_G-]^RG>K
M)*5NZ$( :!C%C%"",!Z^3M,("5W:+_O-N7JYU"8:::($>[H%C@SU=1/[9<1[
M>\_#N?XNR=1">KPLZJ=]7LEKD5[_<_:MN+V_';Z?(N3[.'7Y%]TXB D*TGC_
M?>()G2:7_ZKEGC^ $>_@DIQ<[N+VZ)#KY ,.Y[<>R02=^I'G)[JU&COS=VQ%
MW)5NNS PQ3VNG^Y'$._S;3=\J&^*NZZ^8&Y$?3?FPX@H2KP@3 ,4C6!<A@.9
MZ2A+$"S+QCB/?8Q+:?^_K0AHK"],2[Z<2*GP/MV2P47F9%<+S(5B&1,MMIT4
M62,PS:FHUKY@;=BH[/K00Y%/*4HB%,:>2R(ZV@LB*+7]0]W*+(JI=$A!@TDQ
M69R&1!/*-\N!A9/TG)$W?4J7H6 &_*A,-S8Y'2)9?9-NJZ^#W7'P2#"CL4\P
M2#R2T"C P3AEQ'S"I%88U2Q8UI\6E'/-43DW');D?=F*G(FIC7VZY)2F8ZH%
MM-^M861(*"TS+_)R1F+T>%R&O&CZ4)EL6?I#R?=%_7M7484X"!DF(8AA&%+,
M0L+&J2D6(3_6'3 *&[(L,B_N?#(V+A2G4WWT9X5).?U1(G&R0=Y(D.103IK7
M9>B1&5<$AF6*_,BKT_$:^5!G^8$?,L\C8>RZ?AR[Q W1:!+ 1&C1VHBAZ=1I
MO^5%;02F1Z>L.EEF4EF=Q$FTK$[/"1)2)PU>EZ9..JZ<5"=M?H1WCE:[O/A<
MLF_KFW8][^U=.Q <)_X)](GK0C]B 8W2F!(Z6DQCG$C=7*%CQ_;>S1Z:TU_'
MN'YPKJO=UVRW<=9#$"2/06I1*B904[$IIT\CD2,LI\<UTQCN#$?G-B8:8'89
M"F7$DZ=; XVQHZA/:=\U!Y,Q1"ER0YCX'G"3)(0T J/)E,F]H*EEZ/M6*$E2
ME23*'I^:&C4 6X9(/6))7*74R%VD3"FZ<EZG=/B17&,[VO+<WS3FI0#YGALD
MP(T8HRA"@S' RS:DLL F:V*BU;4C6$K33JH$2JVKV>1.;5%-@C:;*VI/B+F\
MG*;*Y#)41]>)EQ?2]#A15YIAA!B2,$@#BBE)8H9"Z$&2C.9< J46TI2-S*$V
M.DOY"C2J*HX%!@UHSISK^,_(D=(=23Z7JCRR;ES4'B5>1-7GEZK<#*;RL:)*
M4N:RE. P=3TWBGR,_'2T1('<BZ\JWY]L\KIVRJIQ#OB<K.[6]-M.51SV>?VC
MG!(I42HF0K;9E-.?]F9 ^HB\49&.5]MF&8B]0-09+=*A=1DRI.5!9:Z1R:ZE
MC69P/32=0\L9++M!>[="F'@(03]!@>=#/%J.?"1U]:D)>Q.*TV-A6C_>=B2K
M2D:X%EUOFY9FV66W12J6 &EGE^+,4;X,13/JT;.%.=-LB2K>2^?N^YWB_/,1
M0BZWET8,<4/1L%,<  #31$;FE(U8UK:7[]!0FEU2YU%,PB:A4$ZWU-BSHE6G
MV#DC4-J$+D.5]-VH##<T??T9QI=IR'"41"".7<#"!$<!<D>#"4V$#N,;,#.3
M!BG-.>FPJ:Y#%H@THT2S3#V=9DA2C21I7:X>R3HBH$A*W B_V=S<Y+OA66A<
MUWE3#R48P)[+O^OQ4BQ. H)@E,2C.1(PJ0U+RD8LZU&':]@)T/ !28M,\CUF
M9?K$)&@2YN0$J"=MP.3TH&8:MIUBYXSX:!.Z#.G1=^/IR\IF>)&2G<.SS8\L
M0B]*"$51D+HN26,,TW"XV Q B$.I6DC'SB3BHRPZJN1)Z,X$O*E(SP'6 M3G
M98XN"9 FLPO2(%U/7I(A(^R(*A%>KW?W^69\2[[(1W., . S-\4,8\\#+$B]
M<<,!C# 4NB=)VXAE#1IP.?FWN[RL<TD=4J=.3(0F84U.@4;"CC#-I#ZGR#DC
M/=I\+D-W]-VH#+<SK=KGN=DX<BGT81K'*,%AX@$8LM$LBP-7HP"2-S9)%724
MTJ5ZEB5^E6HDN]1J%DKSZ]4EML1+)G6BEZ%?YMPY7SSI\B1_*+?>7W?]9O\(
M(>3#1.K["0'4IX#$C$7#(PW @T&L>,F<BJ7I-@]<'3V9I/%$JB:QHOL%IN)4
M=J> !IV6#^J^P-39[0$F&%Z&=AGRY>1977V&Y%7K8[Z[?7L]GA)>^9A@E)(H
M0"0-N%CZ001[<Y&+?$]RSY.BD<FTZLIID;6O:H[85#5*ED99>;+(H*HR29!G
M69$>DR,D1HI\+DV'5-TX*4%:O,BKSR]5N\:7;8<W\+BVI2!)7(1QX)*$BUY?
MHJ40,@\@Q4M,)(U,J#XC,J7'/]59E!4?BP2JBX\H=Y:UYS$W0MJC2.?2M$?5
MC9/:H\6+O/;LBZVWUT<8\F;_PAZB(')=UV=>F$08Q1#C9!2_@!"IC9$&S4ZH
M3\=OWW*((F];6B==5KPFY5M=SA2HMJQLEX@3TCIC["]-_<PY=E(/#7,GKY#]
M N3*3X"'$YHDD+(D &[H V\T Y.$K;[DNT^5O!(*?EZF_QTC4>B&_9*ZJK:)
MTB6K8!9X4M6I"P195J2>""'=D>1L:>HB"_^DABCQ(*\41[/M*\2PEQ!(8@;"
ME*" 5VNC+1!X0:@J%S(VIM2,$=>#JFY(D2<K'K984U:0RW195I$C1H2D1(7!
MI>F)D@\G146=$5%E:1_KZY[G>WN=%F56KHML^ZZJB^Z,REC^ ,22-&' I5Z*
M61B$*,$>"0F-"(@]3W0-R(@M>UUG#Z^=:=T#=$:$LPT41&@[T[^,LKZ,[F;6
MI<IB*Y7<)-C5$'LC+DA#B@/73UE,<$Q0PK_=&X& >40NOTM^W'IBQQ\^L(\?
M)+<"2A(DIDL6F9%3H'&?\4Q"\YB'<SO\U A;AGBH@G^ZFT^' SE!&,]+C+9P
MZD>,L!0G!, @)C!QR6@K0%&LH@NR-JS+ WET7$KR(@Q%WF3DPB9A*JIQM3\K
M-:]\/.'EHHJH\K@D,5'VX45-T6-$YF$O7&[:_["_W?/QQK:]!@LW)-OM'HKR
M<S<?NG))RBU'H0<@\$',4ACZHVTW\22EQHQ-^]+3WL*3E9O^.I[\@%3^&3 #
M#(N)TO34RHG4GM/N%T<0KYRL<4:4_;K,] ^'763NC(R997X9LF;8IQ<>&C/-
MF'!%]24K^.^W[073'[CA#_GZ?M=-L RRNTHA"-V4)MQ*&$.*0-+> #O:];%D
M=:5MS[K<?;BI=HW3M%O,BO)+7C>W\EIG@%;!XFM2/B4+L1';J^MJ]ZKFZ)P#
MO'U]-G%1=HFO<P6:,:Z7H6H&_7E:N!EF2N)4:;N#I^9JVIW*>)^O<ZZG'$C]
M2][L;8<P]7S/YTV$X3 D7N(%@VTO#HG4FQMF+%K>63."='9[=%=.*;O>;(A<
M05V;G%=);1LI;6NX_MS7$<1N)\U<"B?"W#F5,\K\0I3.K$_/#[(:9TQ4\5[S
M"J7DU#YP2RL_""E."4IQF/J(<%6%HZAZU$V 7*DF]6GK5=D>C9QHR?$CIDW6
MB)&3H#V,3FVF%9EC"LYHB1)3RY ,->B5@9:B<*S]T439"F(8@(2Z)$P19%$*
MT7[NW?."P)63 04#UL7 T UBDK2)J8-EON0THB?JR8SX#"?0'_%Q1C TR%N&
M;.@X\-*Y<ATNE%;55@C2E&$(6 H0#!EV?01'&P%RZ:JIFFRKL)9V\<M2HZ ]
M".&^\+'])UJB(4F4PO*948ZTELUF7"L372,3)FL9TJ"(_=R:F"0#HH+P;E?=
MY;OFX1UO( T?U;2STG?M+&A;QB2@+5["A* P#MO+"'V<CB9#CTENRM<R9;W.
M&-%UH_Q\A*8P=Z+'J)B03$:EG*Z,L*Z<#EA')3M0.?G0Y1Q-9Y3'"+O+$"(S
MKE066I_DT(<;S)JB_/PFS^K\??'YIGE[_6O='SU8N=AE$0(H1 %,?()10+W1
M9I2&2.HZ+RU+EF=W]^"<;8O.V;7P7E77K^[Y;Y3&1GJ\"@Z3)J-4<L2T9[,#
M=N6\'^GDX.8XA726J'-#*2,$+T.Q#/GR=(!ED"'QDTO7.2_=-J_+=76;?\R^
M]?5<-S^$4^S2T(T)#OG0SN4CN]&@CUP0R!Y?4C9DO:P:L3E-]DU)H718%).G
MB>B3TZ8];STJA\/:S^U,7D>=9NB,*!F@=1F*9,*19\><#'$CJD5_J:K-UV*[
M7?%/4!:FP .^'_HAXI\>9Z9]/K:46A 7_JCEJFC$(2<LXI2(R8@5-N1$XR(1
M5M1AM'I&"Z2Y64;/EX==:;8)N5Z=%F71Y&^*+ZV2-+PE%)^V^4%*4DPI"Z(@
M]4&*$L\G$"2C48_&6*:O:YJRK  '2$.-H3!OHTNFF$I,R*.<=O3 7G7(G",^
M9RLZSC-U1FP,4;P,"3+E3&6E&2JO7Q_N4%ZY,?"2V/<\YB(6,$;PP1;$5'+3
ML9J-B5:Q-5>O94B37L"VQ);.&O8!TFS+V <(8BO9"BPN0V<T?3B]GJW,B-R2
M]BHA 28PB5P4!Q2E<>(F_G[<A"(@OY9]\9.3+&*K+UY?ID1FU=HH&RK+U7.L
M4E]<GA9F91F]7!;TBPO2DCZ+]N.C"U]PN?G05.O?;ZHM)Z1NUY>:A_VA4+\]
M_$E1C!/?AV["2.*CP7S@)S25*QB,F;5>0[QYC9/7;UY_?,T^./@7ZGSX^);\
MV[^^?4/9^P__[]]%$(3_Y+#__>OKC_\AIQ;FB!?3DUD8EU.<X\=<QD7LYF&V
MX^6BC)V1*^.D+T/0S+M566ZLRJ+X]&R\[\644(2#('53B$,_A&,U%;@@D3R?
MKF'(NO"-MSML#Q@E+\70H5%:U&SRIRQC\]^1<9HA,=E2I75Q0J7LR&EITN-&
M]LCEN^RA/?$T;DR,4T3C!"<PI1C3E"4H''?\\$%>+'D42=&(=1':GP*\ZX&I
M':B4I4YPA&:?,\D1VTC6@&CF\Y&/>3DWJ-,C<AE2H^O$B2./6IRHOQ4\VG-]
M1@!"/J8X),BG40S'[<\!AK[D22=U.U,(C=$7@X4)%-::"9B3EING;P;/IS@O
MLW->=#0978SNZ/IQ\=E@-69D=^R]S[_DY?U!ZKPT8"'$_'\>0!@3X$:CL01'
ML=P;+4HF+*^?[W>;[7I8_15@]W53W;;+5ILO&6\!BAOW9,D4DZ$)>)33H#V%
M Z*9!.AE7@2VZ2D2N0SIT77BQ/8\+4[4IWA6#'@Q 0E O))R/1CZ+!IW"Z'V
MIE69M2R%ST^RKC4>SCR:U-&=T[G,F^I<CE'*].=PYIZXD9JP$>9N&5*BX\#%
M"1I)+M1.1^T?OSA:>D]3 E(<$\RM1"D)$*3C[#1*71BJGY!2L6:YFGEZ2DI$
M8B8XS_,"4^<VE1AC>1G]RJ _9\_VZ#.E?+[GJ+^WF^A<Q%B2>BF-*<-^PD 2
MC,OD",6>Y$.S>K:F&C^TIWR4,[HVH7)#ARFX5!Q#'!WZ>93_YS_Y\Y@K@7&%
M+LO+4"]CWEPZ"*3%DM1&W&-+!ZEDGI\B%KL $ (B&/N$C"M'B$6!U/D@#3.V
M*X1NG^FV*C^_ZB[_598L'2;%U&HB$N6$JN?OL33-N5GW17[.%5?ZI"Y#ETPX
M\M+>71/<*$R '&\6]B.?T=@/H,_B)$:([2=;$$L]J;NIU"Q,,@UB0(,4^9.>
M"[%$G<9TR%R:(RLW>B0N0VDT?3@]-:+,B(*^K.*0>>UUY$$($2,IH6Z\KZ<B
MBE)%5;GXW6FTQ(""7&9(6C>,DJ.L%K,IA)@N").T.#401WY: R2]%W[HJ;J]
M+?HW/=I'5ZJRG27*RW5KD>(HCL( >"' @4<)BD,Z6 PAE+TY5\>2]1TE1^#Z
MA=UC>,X/OU1-[H#@SY)//.EP*Z8A4Y$JIRE/V7R$:^+WFTX3=$9U3-"Z#!4R
MXLG3%YJ,L2-^!><P"=2=+NA?@/)=F'H>\:(PCEWD!ZX;CB.MD'A(^N9->0O6
M56D/RJE;5%=.<.6ZKE/?9+OVU,U]<U/MBO_B?]UVLK(J<Z>Z;^J&_XX'1/9*
M3@6&Q33*-K5RVG3@]$//:0?HRGE=U_?Y9NK+-Y\Q<T:4='A<AAAI>?#LADU=
M-F1*I*H\,@-<R% 0(4KBU U]QD*/C69B2#SYNDCJ\Y,40U4Y:L[?NS^ZP+G+
M=LZ7%MX_.<!U7Y:A?W)@=.4%L),C&%Z%433^4-'UKNXOCB3JRN%_=Y>OF^)+
MOI5\RD0^*N(5E;5PR)=1/ [SZ]133BY43DKT+4.AU.&_4"-I\"!\&&"SX:/#
MJLRV[[)B\[HDV5W19-LCZROJ8II"3"'P(8A\#$&*1\,T227K) ,&K>O7 2.7
MK6+SJBB==0]3\J"  7+%1&=B5N5DZ(C.%IW#Z1SP73G'$C7Q,8*+E)U1*8-\
M+T.W3#KT](2!::Y$M>U]WF1%F6]8MBMYL5#C]?K^]GZ;-?F&YM?%NFA6+H->
MC%R&B4<IP4D2^WM1#<-$\I)@ P:M:]N(T<D'D'*29H)3,4F;F$PY2=NS.*)S
M?CC"YPP 3T_W65&TRXR=432#="]#T4PZ5%EKFM)'-T=#W18"KJ%WN_PF+VL^
M .KW-[VIZG97T]OKC]FWE<="[+M!0%F[I\E/V-%D&DD]*'V@TZAU^W7<49>L
M^C?NCB'S0J3; OC#EJ.6G)HW'@G!.F_&$$@6?4?<]UN9'F$=MU_^T,+]<[?K
MTJFNV]V8DQ\FE2'T7$EH*33+4%-KWCT_CFJ115&=?7X'T2J!4;NC/?5C%%(0
MTK"=*AP,N9&/9'8U*'Q^DLT-]1&N\;:SO,,G)XXJ](GIGV7FY"3N&,P_C/>7
MX:;9%9_NF_8>!Z>I^(AW^KU3SUDZHUL:E"Y#FG0<J(PU+[,7,:XB  "BOL]P
MXD8A\1'VQLT:41 "J:M6M8U-O;.JF^8W)4;Z5(M)TZ0LRPG5RU<M+NM^1;$M
M7'K,+D.OS+DC>8^B)$^*5Y9QT\_O%*%%O>:CK/M=_C'_UB3;=M(O2F'D0@RB
M($@H]N,04Q<PDE*$7=_UB=:=9L903#%([2[68:IW$=DA7W@\.COKTN/21]>F
M=8+XPN5&S@&V\UL+W.F03WRAHR*_YX>I5B.V#(VU[N7Y"]PLL2K\9E%6[+I%
MXX/)>G]O98PA3?S4=VG@)[&'(X#]WF040U?XT(J6#7O=NX75[W0XZL#U;!>R
MGF/I3"<U0NXR>J(95YX^K6..'^$IH?5-OKG?YF^O]\;[J_IY7S_JY#_G68MF
M\[9\G[=';HKR<Y+51?VQE85#OW>Q"UT_)20A;A"UUU?'0[^/<!PCJ6?#ID4F
M-1:4/S4\.M-.!E\795:NB_T#'5VJ/AXFW@XN.5GC7+<=O]M@YE2EDSF[T4GG
M4^NEY 36M,$6G/M:;)PEI\V.0GR0ZZOA2:(NR,=UV.A/&]:]1T[G$B_,NA)N
MMO+,:$C.S='-$OIE))"9?'\Z,SAC!&0?H.60GCXX=\B3^S3)7#])$ R %Z4$
M@I0$<=IC"-O;S$7K0+-&[:G.B+/3EV=O+SX:[<U4*THQ>48L[$1D&6)@R;<3
M3\K:8%"AWCS]CF0G*RN/N#A$OD\@3&(4^"CRXA$ EQ6F6$SJFIVP4CS_L*KS
MZ<'Y.?O/:N>0+:\DAZKA=.^V'@_I>F_*4&@4<^>C<(EVVQ7:!1+%RB]3D5B&
MG-IP['3A9)8[ P]X)P^=+'2J@+\5]0I$K'T\,W%3X'HAHDF<[J7<)6%BZ#5O
M:;N6I512/EO(DNII- B"$Y0S\2\Y7VF2^JG?"'_*X[D930O16(:&6O%,_"EQ
M3?8,J.C!_B_9;4ZKVZPH5SYE[>YG;C\@$<0$@Y@,*+R4!KXA)56R/:N:7CWJ
MT"UJY[<>MSE)58N(MJQ:#X9):56)P]3Z^A*A:AJK%9K%ZZR>=^)::X!%X0M+
MLB8OFWSS,5_?E-6V^OSP<W[[*=^M6,R". AQ&D0!HF[[$H\_FF/4E7P)4-F,
M]6TQ[<;O;=Z>'FCVV"1O)%&F4$P))^%.3O)&2,X!D_-;CVIB53M%SAGYTN9S
M&3JE[\;3BTK,\"*J/!]WV29O]:T>S/@^(DG*Q^*\C@2IGR1)&(QF4)1(WN(F
M_7GK2M,A*CDB.7F1YTE,5JP2)"<G'92N-JIGDI&G9)R1#V7>EB$;ZO K0^U'
M\E*CX>6Z]_DV:T_WUS?%W<$B@Q%*HAB$,&88Q:GG#19]&,52TV@Z=BP/]$9H
MSNX8F^0M1#HTB@G*5 S*:<N>O$>P9I*9,Q2=41P3Q"Y#?(QX\O0"(V/L"#\6
M5-3]V3MN[7WQ^:;9FT.$&T.Q&Z0Q=/V$T12-YF+F :E7@E2-6!:C]WFV_MM]
MT6Z4VAQ!='8=1LE'@I2)%%.D23B4DZ-C2$Z/:28M.D7.&2'2YG,9*J3OQM.7
M?\SP(JH_[2W[U>U=WN3X\R[/N_MM!X,4(>)"E@9!PH=IV"5AY(X&?3YLDU$@
M#3.6-8@C>]5#ZRY\<K(]/CG]T2%23($FXE!.@PZ@G .JF53H-$%G=,@ J\M0
M(A..5,9;G+$5NS=%F;]N\MMZ%24 HC1PO20)?,!8'%,VFN:\23U%9L3@O#L=
M?FN!.AU2<ZMQ$FQK+\'9(=KHE@8ACJ=>:=OSIK:\)D_[,G3.K$OB"VFJ?!G0
MOE_R9K]S-XU\EZ9!&E$,<("C& =[X?7".#6D?C(F9]Z;T%[#);#_W2KIVB)H
MBV^SVP\$J9Y:"8_(4]-"%?87KX9*3HGKH3IG!A3Q+[NJKE=^""A#B,*8(9]2
MB $;S08$N4ANE4_;W 3["^K3MW)9HE!;V<QS9U;3.GR+D;(.C9J(R1&]>/F2
M=$=<N%1X,B!91[=$XMMJUQ3_U2TQK(B+PM"E&*88H(3&S(_&$P1!&KO8F(BI
M K N:\?7KAXC,R9URM1KB]\4G)N50^E@3*V0)RA5TTS=^"Q>1;4=%-=5,UR:
M&2ZO/!)Q*['O18B%21C %.R-8I=X,G=1:IJ2&A[+WT3)(2RF;W(LR@,P81X7
MW^>DG)$:<$ER9/02AJ,+P&((0.@%89*F)$A" %S<@?!]/M9+$[F*Q;!QZ]7*
MHTL9^AOZBT,:[6_]D:M<3-,O5K7,R+M<Q2)Q"\9LE^K(D7E&(RU%91F::<LY
ME:LP5#D4?\CI2U[>YRDGH7TLN)TF^VO1W(P[S/939]Q(&- @I($?T3@-4L_O
MMW6$D$*:BN[ -F7.7C<>$#IMLW!&C,Y7#M+9[ZN<:VY9D+TS_=8T_\OHL,:]
M>O8HD0W6Q-^X?<%D*Q-']V,]/+D%"S.71 1Z8>Q11H(H<.$>B8= ++5-W()]
MRVMQ+_?;X1Z\1]?@/<A<=#==>,34=.[(R"FKI:!8>E57FMDSJFLS3LM08*L>
M/GN^US:;EY2YV'UJ5K1:W[=;S;A55C;<Y.ORNMK==I-)^XQ 0X2 FWAQ0AAB
M/J$ ("]@R$N]V 5A>*&CFS-D<7OW *]__J(#Z!PAE-[S8)#<S?"5?H)O620_
MPB9,]JM7SB]5F?_(_]]Y] 4G_U;4?)C)03O-35$[^;;;"/FC\^J5J'2V1'2"
M""",.CD4IN8%\3-/Z[Q29\&?RE8#%).Q35ZL/K1WJ7)K '[Z6#3;?-5:\ D
M'@O2A/D8>2$<3.  4*&-6TH?MEP2=B#:J_0 _.'3GYT1GI@FJ3%U7MNMDR0G
MX[+\O%!VU6/=5>?K'S]77W[B+O8E%__%TTKK)?=?4!$MEN85##WHE8%6(BX#
M[<GFHOS\X>'V4[5=@<0E":*8$4I8&H7M"V'C]T$:"XT>Y;]J6P!Z,$Z/1KS?
M2U)SN=/;8T6RQXL18J*C/W+Y1"]7HV7^+JZ(N])M$/(YGGU;W_ &T-U@L (,
M4AKBA"8PB$,:^C@!HQE"J"N;YZ4^;KFKCYB<$51WT89\JI<C3#S=6^-*3@ D
M:3*9\8\9N)#UE<B:7Q;TX+^0_35X$!&)?M"!-QO>8.H/?%"9O]V]VU5?"N[I
MR@W"*/0BCR4A2(F7!$GBCN88@(&H6&@9L2P:P]3% .[*Z>#Q-N*, ,7U0X_+
MRSHR&8UR>J+.H EI.4?*"8DQPN/\4F/&C<IP^Y*5GO8%^MU=M>MF/#JCI'WW
M;_= JDV^8IA&<1IZ!/DA1"GU<8 'JTD8$>%I"1.VIA&B1QB/.M. U&FARDJ2
M)L>BRC0=O4H"I<6L.:DZR])9Q3+#[U*$RY WS_3+)$LB,C;.X/+A7%EWMW2\
MS[GY9I5Z(4UQ#% 4(1QC$$ ZCN@2%OG"0RUE Y8%:[\"= #F],C$]4F=O,NB
M- EOBHMFXI29$)Y33)Q0&VWBYI<8?1<J@PU)7DQP6=YGV\$,K[M@#%U,"8Z8
M#YD7'S2+LECH2A'ECT\E(CTH90&1(TQ</*QQI2@<8C29%(UC!BX(AA)9RQ$+
M-?@O"(4&#^*[ V]OV_*F6O_^X2;C+>?M?5,W6=G.**^X]K2/E* @#:$? 1R&
M;CJ:)(F'Y+8!:ABROM^OQ>9TX'A!W\&[<HX RF[IT^'TO*9,3J><OJ@S:6D?
MWFF6SFZX,T#N4G;6F7#EV18Z8_R(3_"\SS^WET9F9=--84>0>BZ-?8!<E (&
M4 C'FHE  H1NLE;^^#13. =0D@M0:H2)3L]8Y$II/D:4)G-3+X\9.#O7HDC6
M_,6,'OQGLRE:/(B+!,G;S;W;U^4F__9O^<,J30)>,%$WB0.6,H9(&$2C'2\%
MPD,>M:]/(Q,#*J>#Y7!<LD(A39JH4MCD2TDJQ*DR)Q9/2#BK%JJ$+44NE/$_
MTPL])J3F6_F_6+EA#""+/3\,>)7BN7$4>>/GT]@-I>=813XZV;PJ_TF%J50A
M7B2F3TU3HCIE>HX-H[.DW-"EF5$93N;OY&JP7YH!E?=;O 9(BVW^RWUW?W/J
M(8]"XGJI'WJ ^@2$9#3!<"RY\43BP]-D_A:0TR.2S?DR)(FF>TO\*&5Z$6K,
MY?B#YV?3NP)!\W=Z=>C/DKJR_S+Y_%V^*ZH-*S<T:_(5P3@A:>"Z"8X8<GV7
M!N-L! T]*+UX*O?UJ3)\C\KAL)P6EWRRER1-/.O;XTLQ_8M29;(2>$3"A9)
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
M+GEAU^Z'G:N.TZ?XC*!.&+]EJ/"4#E>S]14S>I]6N[SX7/8CS/7#QUU6UNW
MLRIYZ=K];MMM*<:;_[ROF[:TW;O1SHCQOS@J+3Y6?6&Q0@&+" ,>]I+0<[L%
M]V3T ;DP-I$:YD%N.8NT6G3=.^:L!\^<YN",D^V]$9R)7R:-FJEG^;$WGJ4&
MEYW19^?(:2<K-\Z1V\[![^/TUFYFVO5_OX#QP*2Q54B/\[:Q96?2F;D13+I+
MB*!N?OZUY-7!MOBO?/.7K"A;+7A;4EY ?,G:R>$:[XJZ*#_3^QW__[ZP&'U8
M>2R)41A#Y*,THI%'4!*.0+TD$%JLGA'>!)GV?H_>^<SAU_U(+:__['"-7&?U
MC7.]K;XZ-_GF<UY?.66OI$WVS4SJM1E;O?RZD+ :3Z('OYS6L7%ZC$?[R#MG
M<,_I_1M> #E.I,M(E.I!4LB&$[2(9:>\*0@0S&N3Q<+$9.+[?+W-ZGI_-O60
M;%/./7Y+7C\"OT<:)"&E&"511).(>!XDL;M'Z@9P5>:?LR;??#0SR6@+II#<
MQ;W</?-(*IGU&>QYXG)V>]>X[!4E+_?S;%?RMF$AI5F-N/YTY:Q1MI74GCIU
M-/IS6GUS6K^>Y+CE93.-\"C.?=IN#,O.9Y,P(#$[.DTT=#,:_I(5VW8X>%WM
MZFR;?\C7/,TV!<^Z4H-(/PT)<2EQ,64IX\DX0?& &L 0"#UBNA2L<P_4;K/=
M[WD_E57O732?VB8+O5Z:6V+4C:>\O9.ON)>O6C>=@Y_?]>RGH? II,2I&\ZR
MT^/D; BFRGFB))HV7P"\3]3,97SHZ?H@2=TD"4G*"!PM1@ECJZ9JLJU8RM.Q
M(Y6N]I"$U>MC^T]>W <BEX:TJ!1+(5.Q*"?_@GLUKA8AXV<H/"/!)HA?AGP:
M\:0RWRSE9.M_WV<[7IEN']*BS,IUD6U?EUQ?;[N!""WJ-:\V[W>'+1H,@0@$
MOLN-,APFB&&2 $92ZH<AB-&EY]ULF;77)_=(G3U4YPBK<P [VQ8J23+/]$Y;
M85E&C[7F735-XS;8LS_FWYJ$<_/["D!$W#2D.&$^C!!(48I'XY$7,;D]\H:,
M6M\\?^C5QWWYAU_+['Y3-/GFSW(5BRFN#8BG'9+-:N9O+4BG0[DDJ=Q3IZJ0
M\MQ_!\*HX)2,'JIR)BJ#XWM>O+3ZQ,VW)NN#\H;8@QA$L4^BQ(U0$$6AEX 8
M8N8Q"D6K&2T;]KKA",LYQC5;E7*.I#,=S@BWR^AF9ERI++0]R5.SZYM\<[_-
MWUZ/QO'Z;_=%773&DX>CWWUL1ZBKQ(]="!$CQ(\3A,*((C;"H &0.BYCW+CE
M.?P1;SMVWW?(8\A7SJ>'XS_@V;'%?;IW3A03,>F;-1QR<F@^$G8.-DLR>D8[
MK05G&7IJS[VG9YOM\BA;RAR9P]^*>@6ISZLEGV&*@R1* X#2:+3F,T_H\D5=
M&Y95]*7^RBL9CDQ2)Y4YE*L$;=*G6 1*,&>U_GM"C4#IITKF,E1*VXL3!9\>
M*SJ:T_YRE^>TNLV*<H4@XP,T@AEKKZYV?1RG_F#7AY@(W1!ISMH,.G3EC!B=
MWWJ4!C1)DF-U=;)'K[Y.R3 [F68](DQ2O=3(7JZ.*?HCH&@Z3%W2MF+WJ5E]
MR+9YMWG\-FLOJMG=5;MN\/QSWMVNB3 &. 0 Q1@2/P*)Q\:1L^]2)E13F;!C
M>W3:HG/>MAMD6WS.$4 Q#3/"Y7GUFII&R5'E:0:=WWIT@NG ")6;:GW?;H3I
M_M%B*'V$:AIJG^2#UN-.Y0&$4:?Q AR\H.XFF9M7UXUZ4IEO5Q):_K[Z5-U5
MVZ(>3+A)['DI2?GG8T3#A+G!/ET ' L]=*_T8<MJO8<C(2C2W B(L4U:Y-1W
MCT1%:Z6ID1!7FQ2IJ:D$56+:^<3%4V*IRL0"U%$9>F6@)6B/T]_P/WC=Y+?U
M*@DPI F-/>#['@I#/]E+;H  #36'Z.*&9IDE;.$Y'3[]<;D$I\I#<CMTFI@U
M%&%RJG'XGB6Y(;@\N8L=?2NX<GG@K<J/J$Z]RQZZ&YP^5L,0?\20UW_9M7<^
MN@0!YK,H(#Y,_)1@/M@?S6(:8KG]:-KFK.]$&Q&VV[@'C,X!Y)73P933+7V.
MQ;1K4G+E]$N/52L:=HFM,SIFC.AE:)DY=RI+#5)[B]G[?%U]+MM3F^/SY.VZ
M,.9(FGK ML'EY@W_XV+;GV&J:U[4M]=5['?O0$ P9C$D+O/2V VQOY_U1(S_
M5J5LFQKC5!7?D5_=M0"#9\ZQ:T[OVR@(F^[NN"/WG,&__JR-P#ZY9;4&N8)S
MR0U!L5:=I0U,M5?21)#DMEE.VBR6D9EF9^'RYLX9HC)''B19?</_@O$?^9)M
MVZ2^2DD8>;[+L \"0@ *4G\<D" $\&SI4 &JY:S8(IHO::F$;OK<93EJBTAA
MK8_=WQYY^?TFLN<1FRB?:325/UY:TR'#8G;3CM$L2:Y_W*S_2?Z5G&/G_[)>
M11@RGID#PAA&?+#JN;$W0B<D269+=:J +2<\O%Y7]^UTSVZ/J;\%Z0<@>9)S
M$6S-D0ZGB.PRDN+P.FW_#[H/CLY^Q[GQ1/BFRI"ZK></F">U*;&9+<W$:XZ<
M^;K\PG^^VCVLXC1UX]2G'J()\TF$4I:.6.,T$-KE,R]"RUEQ#V2^%"@1K>ES
MGIU +2+)70[]XE/:WH6)<IA\:_CC)2T%#BQF*=6(S#Z4ZVXP7 $2HQ!VS]L&
M,60A26(Z@HY Y"YB$"<&U7*BZJ\]S3I "QFN"89PYH&:^>@M(GL]':)U;GZ_
MF>QYR.88ELFUE3]>;M,A8ZJAF$J,YLAV-+_..>S-Q^Q;_],KF$+($<9I3-P$
M<9@^#D;,8>H&<R4[>:26<]T(J+V=?4AYW53E?'E/(9C3ISV[<=3/>OI);]\P
MVM>8\?E::/$I[UFX)LIXZLWDCY?P-+BPF.]T(S3/G&/#^W_1S9"" /H1 P 3
MZK9CSYB2\6J?T$_2&6<=Q3%:GW<<H<P^II.*W!PSD':"MHA17%J419._>E-\
M:3]Q\/3[S6I'3DPV*2G?0/YXF4R)!:L3DZI1$3K.K@@U>PEJ_R.OR_7V?E.4
MG_]259NOQ7:[HL#S XQ]&,41<Z.8A*$[P@:(N2)/DBP&K%0^4WW71":5+889
MD=/\2\#YW26WX0?WGCJCJ]]; Y&XTV )>&4:BMH]"8MI,&*W,$P0E!=JG<6U
MAP7<%K$H.JJ%]MO95VB/_F(5>IC&"(<1ICA!/H">OP>-0S]6>&A[9L1"\JC]
MYC9>KW?W7.SR;W=Y67.5:U6OZA9QU\/2W?8 >O857:F0S[:B:SS,2RJ7QA7=
M-P+-8O'3 ,\#-NUZKDI+^>--"NB087\]5SU&L]PZP,/W#'>_&!WZ043;<Z(>
M8X0%8>JS9 3/D[T_<X[40#Y-KNSW-BTB'>I$>?JT:#NR2TJ/!U^/__Z[W_AT
M.H03)4P#;>B/ESA-D&+SG@)3,9LCD1ZG_03%.& D@JGG88"\E/]^1,L'Q]X^
M<XH__CT75)54J3K/?I0JVSGW%NI\*5,JGM/G2.,Q7%)2_$.,%:<?)*JTB3]>
MDE-BP6)64X^*Y30VSN">NC-H12&(?4)CZH68I#AR,1ZO40BCD,43;'C2QFAY
MPU-[55B_/.QD ^1)4I9^[*RFK$G#-F'*NMJOW5V=O3[NN\A:EX)D/FL9:Q;?
M==8RQX*9K&4X*AI9*\EVG[.B?,>[[DU6YW_AOSXX@&_;BUY6E'D$LC0.W';!
M,?%P$)(!3)0"[0MR3$"PG'-:3$Y5.I]&)<L.EWAK)Q\C(5#.+5.S;R)U#)B=
M$33/$>UO#[BOG![Y[$E!@%TYS3<9KL5*NE$G+RNV>4Y%!7G,!_WN[6[S]F&[
M:Y\R_IH7GV\:CN-+OLL^Y[_6^?7]]DUQG:_\,((!BF.:8LA<3!-,Q@FZB/B1
MU$/O5H%,?0+BRKGOP#E;CDY.GNT&1$RD%Q,+.:G>SS$-1Q&V3XXB[ ^8C^"=
M ;W3PW?>G(N6%<'68?J,;$\2P&6(]S2N5C-T$#DA[Z%L7X(RH@4KMWTN.HK<
M-/4!<U.7H!B-ICT?21W;-F)P:F'>3]A<.==9L7.^9-M[28$V0[28$$_.L9S@
MGM?9_03*M)(JPMD9Z31*^3(DTJQ+E<4F.M]*;K?B?%B+[O\%EVK/2^,$QAX-
M0Y($843W4IT ,ML=]&IH+8OM,JYU4@SD](NY]F.XB&7=OE4<[7C"W_E=%R_&
M;:+%7KTVLXQLM" ^+"X FXB4:![D>-N#&1U@#N9]WG!8[4DX6M3K;57?[_+]
M4S!1ZI$X]#T6HC!-?$)3  $C*45\5.*[D: 0FC1I3](.L)PD+_/K@BO67&\\
M23!V1DQL\+X,6;#B666_U<IU5<H;89EO2%4VN^+3?0OD'6^RI*J;@]2L, K<
MP$?8Q9@P$'J44#;8CCD.(E-VFK%HN70<0#K'*)T6YI73 I6K)@UQ+":$T],K
M)X&JS%K10"&RSJB?6;*7H7N&?:IL-D\C6L=N[[;50[[[.6O6-T7Y^='?Y[P5
ME\W;Z^XO5V$4!Q"C=@>X&R&:(EX]C;B2!# #.F@0S7P:.3KAC%X\^J$K9W#$
MJ:[[GS"BIR;CJ*6U,X70F X;B]Z4FBU.NKR>6PCHHK7>AK]B>< :T_9SQ K1
M) QQA#V"80B)!R/@CX" GWC3)(>+,+Z+K##\:%[_@].]G.Z\RR1?D;$92-O9
MP6@,YT@+4N%;6):PDAZ$(_J]YP5Q1XTE!$EN-3/!S]FWXO;^%I?E?;8]_LN:
MPQG;_8BL!98$?NC''$D0!S%.QSF;F'FQU!,L4^"9+S<,;CB]'X]^HFZ592\I
M>YTQD@[,1E,K+\P62&,)PF ,I\P),L3+)P<K85UTEK#CL5BZL,BV\+ZWK-C]
M>[N+:UB4>[08]W.>M9/ZF[?M0M[];L<S&O^!7ZIR-_XVR>JB_M@NZJU(G,:
M).U5 WY"*24TCCS2WDWO8OXKJ:O>IT-E.8>TCCB=)]U>@!Y>M]I_C-?YK0-[
M>DEM[M );K=;9-0D]^29"9B=K7FF^#VW?V_R&"XC.\S@]].=@#,Q+YTIDH<!
M3;OTF^[RO]WGY?H!?ROJE8M]CP78"W!$&>09RB/>:-D-/;D-T@;L65;W(US.
M'ICS6PM-5<MUR)54Z8EXE=-?)4KMJNUIGD1TU #+"U-($QZ=TCYC;$FKVDMV
M:76;%>6*^H#YE 00^#$./!(F?CA:3B(H-55NPMX\JM:#4]4U'7HE=6TB9HWH
MVB52[2K;::9$E,T SPM3-A,>G5(V8VSI*%N]KQY_SF\_Y;L5"]I; 5U,&? #
M+JK0#\!@.L$>"'6E3=J@96W;P]&7,7DNU77,*HTF!LB_];@6(&1/J9)4,F6F
MERMEZBX):)DF7PJ#S_TO_[7(=_S?WSR\R;]P>ML:D49>#& 2)2"AO%A, X^Q
MT;B;QFJ5FI[)R288G3VX?KH*_[ON2%2+:>G!Z%0DJ\J=/+^VAZ5G&!,;F9J@
M?&&Z9\BIT^-3<YQI%7+/80S%) A\B#S 1\<H3"@.7!_N,21$[O"#6<NS*J&Q
MT:L&\QKUWR2DFU3&Q0QL3U(G6QAJAV!A2FG6-Y%2T1"#TKKYNKR[;^I.IL%8
MI48D1"1*8PP\&% :)(B.%EGD2AV-T+%C61,[+ Y05#T5WB0USC)EZD/;'MB5
M,S X]P#W.4\B\J7![L+$2L>34]*DS8Z.$,'!(H6>CU+J1L E41P'A/GQ8)&X
MP)>Z U#'SB1"!/6%2)@W=2&R09DI(8(+$B*H)$2R["Y7B*0]$1 B-79TA,@;
M+'HQ1C%- Q_X7AB3 *9T;Q'Z--45(E$[DPB1Y_P _ZPO1L+<J8N1#=I,B9&W
M(#'RE,1(EMWEBI&T)P)BI,:.\+4[67V#RTW['_:W^^)+MFW'B-T\&@C3"",4
M1UX(2)H$80#<T6"8N%*/J&B8L2Q%+:1NPJ3[Q1$XI7E['3K%Y&DB)N7429E$
M.[<4G:3HC# 9X'49NF3"D:=7#IGB1E25WN=ULRO63;YYV?3+?SH(90P\#%P_
M1! AMSWD'<=[H4Q(0&5TRRJ0^91-:1[>;E#$U&\Q\3"FC[-,T>O0>$9#)XG.
M,E1V&E>K&5J_G%+_7)7YP\_9[O>\2>_+S6B,A(CZB1M%(00PC4,_AN,V89I2
M)C6AIFC"LKIVJ)S;#I9SW>*24U-5XL1T<@+.Y!2PIZM'Y'209AJVOLS,&5'3
MI'(9<J7K1&6T>4U_./9-4>:OF_RV7GGMPT,N\GP<>)X?8 ^3L6"E+$ZE1K73
M(IMLY\;5>#'VT_NP1Y?:-]S.',OL_')^:SUS.M=F.%(K$7#):<'%Q5I](G&R
M,"_V(.X^(B)3EI-&?AEY8R;?+1S*58V \!MT';0]TI<N8VZ?"^%F01#XW&[@
M\;I[M,LM(ZF'YK2M6<XF/<!_E'PV3I]#,3&?ECXY@1[?=SO:V7? -]O-[Q<9
M.R.@YMA>AB@:].?IDVR&F=);!7H!Q\H+ 70#UX-!B$.4^"1(\+[$]Q*I@;TY
MJPL?ZQND5V>1R#:SAN9$3TC?$M:07F!0>DE))PK+T#\+?@DM..DS)US,?<F*
M;7N+2UKM/G#C']I2LJLV5PR!",8Q@$&*640#!N-Q<R+SDUCJ<A4-,[;7CJK=
M7;7+FKSKH9^K+_FN[$[-?ZJX^ETY?P_"*Q<@)VN<=54WS@^>Y$8>'88%:[QI
MR)4L[D90KZZKW:N:PW(.N":NZ$[R<ZZ4TR=U&1IFPI&GQ9LI;D15ZI>JR=N3
MOSD7R-;L"_+H0UX5(L25T$5!>V]+F!)N.(D0\L,42^TG-&#.NFJ57*B:[OG6
MDJ.5DR03=(I)T\1,RDE4!\XYH%M$.7:9L3.B99#N98B728<J:TU3_WSM7XOF
MYM>R^E3GNPY-ORNR??.G7!?;8GS<\&B6KQM ?]QE97W-Y>/M??/VNM]$N?+B
M"'*, 8+\?S%+/3\%>PD&:; J\\^\WME\U#N8.R5D(0V(>PUXYIW2@L'Q_4E?
MN:?.L:O#OF3GL;/']Y-T_@[+#E?.WF>GNN]> !CV,^N?#IZTW4@N'RVYK6@O
M*,W;/B8[S6PP<"+K3C,WF67DO,6P(7#&>KXHB3]4L>,)OBF^#$MJJP@B/X$A
M9,@E7DJ#D)L<S1 ,)5_KE/RXY6'! 8]3E'6SN^_.P3L_M+6. \#IF0M++PH\
M9N>, B@3N8PNJP[_V<7]6CQH+^&N7)\7NY@ Z,$HB&(6(8SWG= /PU53-=E6
M<^GVHA6I;K(')-Q-/K;_Q,GZ/2&WXQZ0K'&NVPS_I05K:#GW,I^:R[A&J32X
M?+N0-5N5M5IA2I>A/0;\$%V;E61&5(V.MKB<6Q#&;I"$"?%3W\<H3$,2,3@8
M3[TP C*)VY!)R^G\"*7D_A)3E(JITPQLRDG5$<"E;3<1X^Z,CADF?QFB9MJI
MRFJ#51V1',%80<H@20"  00(4TJQAT9;(4%8;5@B8^&_Z=CDB"*A 8H*I<OH
M5)H^G!RJJ#-BID)8N="/VPM+J)=$_+]^$.#!*/ 1 U!FT*)I:I*1R_9H"[N)
MX8LNO2:J!*/,2L[K%F56KHMV2-CO_+_>_\'EPF%)U8)RE2!,_C*$S)0S4E6!
M)$?"U<#>P-MK4MW>Y64]S)INVV4L4M5-_>$FV^6?LCK?O,L>NK2Y+U&\(&P'
M9%[@0>!"BGT0D>Z51A^%-,*BBS:64=CKNQVH5QTJ9X#EX-V._TB_-C-76:]'
MZ+E"9)I(+:.C3^7LT])F2HY%A>+#^B;?W&\YI,YTTIH^!G?4ZNODX? S SS\
M-=MM^O?Z7(18C#V?NBZ!*/1\GZ8C/L3DMDI-A\KR\&1TI%U^/1:58V>.E:5V
M/CTX+ZI/ZY+:"ZL3AE@L+2PSNI(98MK 6LDFQN)P)K%,'^MEY)@9_*[F[F62
MJX6= ?Y/NGNP_,3S"<6$@##R6 S"!(+!1L10*/6$E]R7+6> OG^W:)0NQ)-D
M27#=SQI!DFM]PMS86=\[IN'<FIX27<O0(47L3]?N-!@0KD255>J KMR\XPWL
ME^PV']]D2)"?)&D:4A^[,/9#E^$1*O"B2*HHG0/@A.JD=*G=/%$3K#.7'C!U
MM9SEUCL;?)XK'><,WS+4>UX*GA:4\\=#-)>PV[MM]9#G'YIJ_?O;NQ;G^#:&
M%Y$H !Y*D1?&@*(T2?;V IC() 1U*Y95?03F=,B<'IJ<KFLP*";.TY!G=-KW
M:F!RIIOW3C)V1D/U65Z&$!KPHS+=_L0DJ=XUJY^+LKB]OQV^GX1QB"F "*,$
M>P@RF,+A^WR4'0J]VB7_5<N2,X 1$QD%3LZ+BETZY$1DP&%&)+AC1P+!?_=4
M')YY_H(8J+,S;^?7P%WIM@O#8]=3E=&;_:UJ&&."$Y:FT(MP'($T3KP1&(-8
MZBV_">#87C<1F%*_,*/^1O7ZS"F":6@ .VT<U8LIBR&<9Z1[D7B=<:VYJ"ZC
M>)O28=DQJVFNK6>,OE2MV;=\MR[JO'Y=OLMW1;7I]O"]+IM=4=;%NMMEM$HB
M-Z"017&88)*&!+LQ&J!C/T[\27**2<"6L\X ]<K)1[!.43IW'=PK_LL!J\IF
MR$709SOMS!7JB1/3. _ &PH[;BCOAH:R][3?UOF=I"Z)X-E(;C;:SG>>_JQ0
M8BI!VHN7]11Z?!WV_6WO!RXW/^?-3;6IMM7GA_VF.P2IFZ#0]4GD 1JDKKN?
M"^(E01*OON2[3Y7U'&H0L8RN'CLGON]]?UR@W1N59^L;I^JG33]S/]O[#F_O
M[IO^=OSF)A_^=)/)7C>V!#)M)]29XCYY/CTZ W'D:7=PXLC7V;9=3Q _&RG5
M0NOYSC.J#49,)51KT9HEG[XOZM_379[S2B#GVM&\Y_H^S,2NJ.>E20*]!+D>
M;-^,8'#<R4[<P$<S)E4=V-8S:PONU35'UPY%.WA.>\7PE7,KL_BR.-[F2*)3
MQ7DAF?3*:1UV6H^=T67G?==V+BW<+3^AGHGE5%G51'/Z Z96([38S*_FXK:<
M))M]Z^"#B# ,$A]Y'+N7>#0 =(2?0M]=6I(5A#UCDNT1+BW)BH9[*4G60IR_
M@R1[H>U\ITFV]VK6)"O9G/Z[)%E96B9/LDIQFR7)LF]W>?MD."V^%)N\W+3P
M5TD2IG'@>B$,O9AY<412?\0=QE#NL//L:&UO1QXP.9L!5)=19TRD:B&=(8-:
MC^9B4N>^C8RN=IGS.TZ8+X5NJDRIU6S^@"E2CP^;N=% I*22XJ?+N#_)X/Z8
M[V[!R@OBV,<@= ,4\Y%Q! ,T'A G01 D"F/->8!:'UWN96Y;7*MDP)GB)Y'Z
MEA^XY>6\UL<94IV54%W*<?.VCP4EMYF)>"FK+2$VLX[Q_KW:\L]LB^;A>"8X
M0<!U0Q>$!(0^\PFC*-SGXY#1&:=2]8!/E^Z^[/$M8;52,]PS#@3MQWEYV?'@
M\Q]FR?)L.*<>)>JUJ05EU(41,\6XT43LEI1QAVEA''J0I 'QW1 "$(8QH^,(
MF*8X76#&%00^4\:=?>E2,]S+R;@6XOP]9-SO?OWR;#AGSKB2;>J_3\:5)6:&
MC*L4.]&,^X[WIGRWRS?=)24=UAK?-S?5KOBO?+.*"+=)O=1',,8PYK^(^I.I
M00H\E!"Y+*EIS'IFV^-SZA;@E5-W$)ULCU$NO^F2*Y:3)F15+H\<Z/S0T]EC
M<_!E.JVH_7FBSBBT(8:7H:JFG*FLM$)]]7I[W]1-5FZ*\O,*8<;2  &? 1B!
M]FI[=[0**8PB??F2L3:;?E4'D/H")L6ONH+9(M:,A+T58'0R#3L"(REB*B0O
M5\64O!&0,7661'6,%X^W5=F9?)?MWNX^-.US'5U]^"[?=2A6[37(D* 8$D8I
MB?T(^GO+T$\].2TS8=&ZGO4@1S&[R\9#OS\4I;.IMMML5[=79_0R=_H=/GN4
MB\G;U%S+2=Q \J!O'"#OO$X/<1C!<Y"][DTK=0*TG9$[DZ0O0_*,>E39:Z+*
MTO>L: RX-0]BYF'732B*N-UD;S&-H++D25N:6.HTQYU:G$IKFE4R=;1LYN'F
M&8K$=$N9V,7IE;HGIW5*DQUE?7I=U_?<&DLAIK[OX1CQFM!C":9PM.:21')#
MHJJ5>72IZ,!I:I(HCXIZ9(% ?2VZ<EZ?IVX:(>I!R(B0))L+%2!9+RZ)CQ(K
MRL)S/ SU4]]%'N(#4$:B!%$01N[>)".!IOK(F)I'@D2FM*;I3&*S+T8H7FBW
M4G+E4M]2YT?X=;CUNKHO&V[@7;4MUD5^> @U1JX/7,]+<033.,"Q&\3]6IN/
M(4J!Z"-HZA;LY:4#*&=$-=NM5Z<).M.5#+"ZC(YDPI&GKZB9XD:X$WW)BFW[
MA&-:[3YDV_Q#OK[?=2^1?\R_-0EW]_<58B&)&8Z\,.!%.6PWC 6#Y21U$R"7
MK$Q8G")GW55EWC[*6ET[V0C9N:YV3LU!._4>M>1CC2;X%E2OB8F6E+$1W2O.
MZ:N.TP/ X;%;IP7J=$BG%K;+W)U3.(/,+T3J3'KT5/.,LW5)_(K=I^;H\=M!
M=.OW^3HOOK1(\'9;?<TX,W77#@\X/!+%K0Q3ET'@D33!&(PX(M=G8E)HS[YU
M8<3KIOC2[OK;]4_2.TWE9 -^_F>C TZV]T!,'RV&Y+Q:+B,6<MJY?UG\[;4S
M G8.B)T#9!DAG2H>FVI]W^ZCZ[;:+3PNC[#.')\GB:XEJ$M? ,*H2U[*E+V0
MRNS3/V]BF\"_:JJ&++OGJKK+=\U#^\IF@\L-^]M]<=>V\2/#%$- >);U0!P&
M(((>]4;#/DDD;U\U8'""G5<]QNX^Z7P$*+O92I]8L<I^8D;EDM,([LKIX'6,
M[@'.7MA?IN[L%BQCO"^CK#?IT+.-6(:Y$CZ#MI=:ENW*HOQ<CSL@DJPNUAP*
M+;;MZP)/U!:G$4YC&C$/N8D;I#YQZ8@F ;[L.PZ64%A7P@Y>UVDW/4"GS!NG
M*-?5;7[8K"5Y3LQ62,3D<@FQ4"SPJVMGQ'S8QG7E'((T()]=5Q4Y/B.VMJ.V
M# 6V[N73 T^3L"JOU2\?Q'JZ1^37DH?CZ#GF-KG4R</XPM"[7;'.W[='MSKT
MJR (4PXN2E$043=&21BT-TD&V U('%&IE]QGABJC-2J/J1Z-6#M/G.3Y\=%G
M^[&<SLE'3\AW15_M) _[=\^<SE6G\W60*=G75F=N);)99O$-1#(9O71,^/F3
M]U=J$;><C6S$0BAIS=H(EI;;YB7C9 I<0(ST;M90AHJ_%?4J\J(0D""(D]CU
M/(C3%"<CTA2[!FXHMHO/=DZTF0=;!XT\.FZY"0CFOH5'7R[AJ41LPNLMM&@]
ME[MF#.)"$M:<# C=3#%E-"9(3<]QTNHV*\H5BF/$XC!,$2 T#"B,83@@I6$:
MTHE2DS*^[R UO:QRO7_392;U%F ],TT2?!.9Z5+,EI:;3A%K)S=IA_&[STWZ
M#)C+38:B(;3#J_O\V^M')NNW9?YS?OLIWZU8D%) 2)A$A!'*8DQH,%I$ 14\
MD&_"DO5%G;]W(/PQ0LXKY^^[7TCL =(E46#WU83LR<EMKZ_M&LPCW:T=#L[Y
MK8<GLY]*ETN)G5,3<JJV1VK/;3YR>]=S6Y7YCYI[H,X[?VJWDR'*%K"OR90G
ME?D&I2O?'[]6@T7BP20"%"'FQ7X 8Y12K[>(8 !%#_":L&1=OF'\(W*Y>'OP
M1R_2U1L)!E6UVPYUAK2;@S.FW1)<ZFJW'4X-:W?SM;*BW7OGI;1;GK*E:K>"
M)Q>U6Y4=#>WF@1_S11)$ 0SCQ M2'+?7D$/BCS83!J#(!(\92Y:G:CSO1^"W
MVMW^5UMO9!A45F]+Y)G2[Q:>.067851;PRTQ:UK%6YAV=/Q @)R2*Q"W6"U7
M\>6RFBLSI*[G*6]9@TG,(D)#QL(4A%%,4P\#.)CT(DAESL7IFK)>C7,EAW&K
MZ/Z/GJNK/S(<J@JZ)?(,Z7F+SIB<R]"IJ^:6:#4LYM?\7UC1\H/[4E*NP-I2
ME5S%E8M"KLR/AHX77\;4@5.6 NHS'[B(Q"%FB 2C28]X@J_J&#%E7\>#'WVO
MU?'P1U=[5D6&0V4=MT.>*1WGZ,SIN 2=VCINAU;3.LY1VM'QO?MR.B[/VF)U
M7,&5RSJNRH^ZCG\HO@T6/3< ('%)0'D32(&+$4E'BPAZVDN;XI;LJWCX(X*]
MBB.H*SL2#*J*N!WJ#&DX!V=,PB6XU%5P.YP:%O"Z^&9%O_?.2\FW/&5+56\%
M3RZ*MRH[&MJ=?\G+P6; 8L(B7O4G+,(LA('+\&B3T$B[")>Q95^_XQ_=;C:E
M_:^VYLBPJ*S@EN@SI>$M/',J+L.HMHY;8M:TDK<P[6CY@0 Y-5<@;K%ZKN++
M94579DA=TUGQ^:89Y^21&Z0A<Q%$*/%0%"'/'6SZ,="?()>Q95W3?>]'+^":
MWOU75X&D6%35=%OT&=+T#IXQ39=B5%?3;3%K6-/S%J8533\B0$K358A;JJ8K
M^7)1T]494M?T7XK]EL<$^U'HXPA1V&Y^9&$:H]$DBT/M,EW"E'5%#\(?O7:N
MO/NOKO[(<*@JZ);(,Z3G+3IC<BY#IZZ:6Z+5L)B7A:4]Y ?WI:1<@;6E*KF*
M*Q>%7)D?C;V(^]$ B!$+XR2E03LF2 #S73I:C+Q ?Q^YL"7[*A[]&+1U>?=?
M[9USX@RJBK@=Z@QI^$>#LRP27&KO0;3"J>D=B);F5SXJS:[(4[94]5;PY/+.
M0T5V9KE>X W/-*^;_+9>L<0G80))BI,(^"SP_1",8!,W\F>[84 <HDP'7=0E
M ZV+3N?CG!<-2+2%\PGL.VH&<KE/\^8WD3 O_VZ"?2!>R!D+B?P?\(8"!1)L
M7E*@&I-YDESU-=\-L&^+9I4R%! &?3ZR\G  W8B0_=Q8ZH:R-UO/"=7Z$.E$
MN7_E_%R4Q>W][9SY2C:L<V0MB_&<,'==.9TC0R+K7/F>,]CCH$R6QQ3;PA\Q
MFZE2836G:<5GELSVZ]W=(\@0I*E'7<08QPYH&@71N#LK\(GKSIC99*'.F-FR
M;S-G-NFPSI#9;,9STLS6.?('R6Q/@C)59E-M"W_ S*9,A<W,IA>?63+;+_?M
M%.K;ZZ-GT_N?YR/. $' <!P$29*R*'8Q':=5@RA@>,8DIX':>K[KL3E'T&;,
M<#KAG2'931372?/>,&LMTAZ6G_A.!VBJ'&B@B?P!TZ$)5FQF1F-1DTJ2GPRA
M?X[ZK]V^S7R#>8K(/N?O\_8N6?[7I"J;7;9N[K/MQWQW"U=AG/H 10@0'  2
M^L '[L$[/U!(HM^!5]:3[ #X6%6=$;TSP'?V^)TC!_C8XUKV&<'OA'69C/T=
MN+/8C'[D\Y5HJVM=GB'OSQ_F2W7!_ B%&^*"ZH;OB;67ZHKO"?^"ZXY'_R3)
M/Q=EZVJ2;=MGW<&*)E'"8!AY%/#_T9#&@(PNPH20)1<?FJY9KT">Z?[C7+'D
M"D.WU2RQS)BPN2RHUA!L<W^ ^N)\?!=39!AJAO\=*PU3U,U:;AB-_ZP+ L/?
MM$^+CC,UD0<"CZL!C5S,,$P\B,,1/8F(RES& E!/M2!P!&T!"P(JX9UQ0<!R
M7.=8$!!I#]_/@L#S $V](*#11!:4;I?$RA0+ MI1FV5@_ASUN3H K#!P?> %
MB0L\A-,X#EG*]G,-ONB1_>_"E?_& V_CK6*&@?:<S6'2+'SDZ!]Y8"T9SZD&
MTK::V8(R^>*ILCE0MAM?T9S/_G9?- _X4]W-_*]B&@4D)@$,2.(RQ(( 0L!(
M2H.8VT\OW>*E^%5["M@#<7X;H4Q\VO$Q#V>40Y&P9?1E5?"5D48C6>.V_?*F
MVG)*ZM[@+U63TZ)>;ZOZ?I=_S+\U"7?N]U60D(1$+/)<SW4#Q@+J18/]Q"=0
M\%I \W:M5X_'4/_A_V?O79O<QK%LT;_";Z<[(OM<$N +]QN>=7VCJNQCN[KC
M1,4-A5)BICFC%'-(*LN>7W\)/B3E2PF0 (ETGYZ)LIT/8>VU@;4W@ W Z\!J
MIHSF2%;,[Q9A5S,9>X%63\+T3CB]/R52KX4Z]\%L50HOY3_&W>"&P%FPZVEF
M88DY55G\L']H)@1%^>/4Y%&(Y6DSB*,DC7D,4>B#%-.VQ1A#/Z*J5=!3FK W
M*H^H'HW"A=*%"Q1=&'4FB'5CG!FQI##?[313C,VW;'MHLOJ;8]OT4);-W[[*
M9/\TE,-  ,A(Q!%  N,0L2 >F@]#KGOXWU2SUA.,(S[-K,(8KXI)Q1*$:N84
M/41Y=O0(\LKK83;9A 3J+9=3*#)X*:4P[00WE,Z\64\3"CN\J6H@+>[N\EHN
M,E9XOY6%A?G^-MMO\JQZ08=3PG$D4#/+8[$0:<IAD\F(E$$:)ASZJ>* -=NH
MO5%[AM-;[[?>(Z0NY"%:1%X8O'8<XL8(MF1;,4>7'IO/B$/=--=?M_-9WBFY
MZ[<5*E&4'^^S<BWQ_9JMJZQZHC/4YSY!@/D^(21. 26<#=AH&"9CDQV;F.PO
MM1SN[M;-W*,)WS>M'=Y=9XA7MI9X][TIWJ&]QJ\8S/%VK3UC$RBKCM3-KESQ
MX/C4J[-@N(?*ZVP8=MSD.[^E=S3#Z^QP*#>;P+]2XC:'?]V("3/;_&K*-Q_C
M^C'D4UEL#YOZ7VNY#UW_^#5?7^>[O/[Q!(: #9"H:3QAH/E/3 0F/8R4QR(>
M&RX,-6\],N!-G3_(%>(RVZWEMGM=>/6WS/NK!^ZM-YORL-Z-C0"FW* K]@OP
M/U[7>[#>@-8[PG5(OM4855)JP\YQ391-F_>J_EKA47TI?U/<95_7WS]GDJ&F
MX;9*X?>BR2 EJKS!P+_+ZH73Q %!'],P CRFF*4"T2@F,,3-5,(G@1]KJJT-
M!-8%]S%6.?JEW&8-S$TKO^OOWM^NLWUVD]=_;[_<H-<37RN.4=U[6=8CFD4;
M-S>9#'^9U^'V&N#>YR8*>H_A7WF/#/!Z"ZX\?%<<Y/+G8MLXVFQ?W-ZQYSLW
M%-JJA<^V@VRS.5&GCU_N49!.<W MLL8-Z]V7>ET?Y'+NZ?>;D;&2%Z@Q2L.
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
MEM!IEHU_]T63/54I_2S+=G*I$5_DA01_[.7!R"]__);=76?E"B- 8=-B',2
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
M_*YZ(3MSN+\LFYJY3$SA_%A?;G%DV'+^NOY^]LT59"F%8=1@CZ,4I2R,(S0
M%V% %UX1&8EZGB3L6+@A-Y1W)WC++8>,=?+\:R V'>M2\G7L(W('_5>%/N+\
M6L?+GIMI@6-BM_GY5C6F$F)Q*<.(KY8(E>=H@Y0E$4A(PH(&)6 "GM V=D"=
MVJBE,,Y26W46_[QUA_']:MS\PC;&GS^?FHUBP:*$C?>*9=WZI2BV?^6[W8NH
M?\_J%8:<"<+D94,T# ,.H(\'M-"7C^E9UZW)&"WK5@-!*I7,XY:IM[+$JWG%
M,N;)=ZU8YE@PHUB&O:+\>G'?[*=F6'U;5UF_/R7?4=[^QZ&JV_JV59(V.ID&
M-*:(A#'E$<6]6@J?-#F?UNO%1EJT7%\V@+SR!IC>":=W!G3F5W55N+N@&&:Y
M=V/\&[;IZ:NZ%AA3?@TNNY4?_SF[+\JVQ>%*&!K!*"$@3F@0^1 *$$._+>Z&
M7!".56]!'_WY]M9M>DC>$=-BURR]1LZ%T3693S<&U'0SGCY69H:7L<.&Y=5F
M5U2',ON:?:])8^I_K@@/J,^#,/0CA"# !$1X:)DR*O3N^##1HLZ8&G6UQX?]
MMM&K\H?7H[WR?LF*VW)]_RW?>!_V-T5YUR8K[>KGE[S)5V[RS;H9B[3YM>*N
MB:&:CRZ:<,,X(;/-_U1-.^'S_I0(O1;BP@+W FD:6C>%<C=E;Y)%;RC@=+:4
M5R3655Y]O#FE+9^*7;[YT?WWU'@2A@)$!,?$3VCJ!RE.,*0AIG[S?\V?.@F^
MH28M9_@M2GE$ZU/S0T,MAN9>GR%N%??KYJ=5<\]M8/0$L9D^M?"\/_L_%U,[
M-?8N+;:8I=\-S3-MU-.E$!N<J2J?:#1VO?N4E7FQ7<44A BF+$S2$-(4) #Y
M0Q,P89KYGM9'6T_L.C3>_\[6Y3_X7O/N8#V6U)3*&CUZ>M3STN%P1XG.V;F@
M-Z-(=$-5QD$O#'0B/87XH\H^WO"JSIN)3U:M"(PQBZ,TBF-(F@EIC))T: 0(
MRO4T0O/#K:M$@T?&YB,B/9G0I4I-*"QRI"<53\EQ1RT>4W1!+T9RZ89BC 5?
M&.E/D_=XJZZ7K @E+,91C 7'G 2Q3S ;&@SBE&C-HL8W8WOF]$)MW?0J264.
M%6=+\]"G.4-ZB3EGI.9URO3VH'5Y=D."3!CR]D[P.&Y4I>ES]I#M#UF_W2S;
M>SK5HEB(1@UCW"AC1'CL8WB::L%8\SWXZ>U93WMZB-X91CVI,L"IFF+-2Z:>
M< TL+JY1;Y)T0:K,$>R&8AFTI[#5%4=<;+3?RC_X?QWRA_5.[JX_;3MFI$GI
M /8CEH@0I!BA8]L<Q9KS-#-M6M>Q[L*C_=9K_W*&=,1=1],95E.T^:G54[57
M.75G^J=$X07-,^L"-W3/L$TO79IDF#&E:QN^?"O*^FM6WGW8/V1]8='39AG@
M6(11' 0L#:,0 1"&?;,!2055F6 ::\SR-+.%Z$F,WAE(C9/M1@B]K'2+<*E9
M?? BC5K*9HE:C:/^<U,\[H"^ :K5CM,KT/%"3##.I -'UXV:4UCJ<;J3^$W6
MA)WK7?:L01@RD,  XSB$((41C<,AZ@0H%9J[F!,:LI[N'B\3*X\@O?5N5_RU
M;OJ$9LX[A5#5J?LL3.K.V8_,+9[&OD[0Q?GZ9%;=2%A-&/)LAFZ(&_77!AX:
M"2S*Y\4;S/<Y0 P33#G"L2\B-#0GXE#SM;S1S5A7I",RW2<&QO*F)CVS$*8G
M/$=([DRC7V/I@OI,)M8-[9ENQK,'!XSPHES,7Z_WVW6Y_506V\.F_M>Z+-?[
MNF]\Y5.1\-!/4Q(*ZF/@(S\:VHQ#7ZML=5I+EB?# QK-$OQIY*DIT'R\:4Y\
M>UQ>#\P;D+DC2Q>INZ!-9BAW0Z ,V?*TX-X@0\J/HY3%?58VC33=L,;[K5P^
MO)<3QZ=*R2F*_"A(&/=A0I)(\$0,S?M$=P/#6+/64Z@!:;OF?H2I)VGF2%93
MMT78U1.Z 6*C:Q+D8W;=$3M5)B_HGG%GN"&!YLUZ^DZ-'=YT[QAH6OZP;X3Y
M-C_>?O!L\@I9&%* 44( %'Z8!M$  !#&M!(Z@\U:SNX&I.W0_5A_RTKOUV)_
M^X]?\X=LV]].IR>3)BE7$\J%V-:3RD=$GV#V%+NCE>ID7E!+"QYQ0R]M&/;*
MM0_&N=-9;^NV'9[-LP$+((:8Q 2$"%'."#ZV1T2HO^ VKAWKZ6(GA&/4;P)Y
MZJMN]EG37W;K,+FC8Z_R],;"VS1NW5 I W:\L/1F@AGU=]++_&%=-TG(\_J7
MD,4PX(2#& $$?4'CH7X9)"@ .GG:A&8LYV4BWZ_WFWR]:W*%JBX/W7Z^S!W^
MGVQ[V]X$M6EPC[@F>@JU:A(U$ZMZ&G4&RAV1>IVI"RIE@%XW9,J$(<_>0S?$
MC?)1[W5>_G.].V0?;XY#]FS$#JM^.&"^SR)9HQ>'$:0(TJ%M'P.L>0;<2)O6
MDR@)TVMQ>K]E:WGCB$89G6%^U81K?F+U-.R,T>+&>S%$N*-M2F1>D#FSSG!#
M\0S;]/3<N@7&E#=+OZW+C*RK;$N+._F625N_^/%>_K>=R6[D[:,/F5P'')#
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
MSC_)*H7\?CIKH^7Q4RF'?_WC4]-OZV9"(8OW[V707_D^"0) 84 #$%"64@C
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
M'_,D'$MWC.4RBW^/Y&&$?RUF"39[V\^1#EAER'#<M^_-N0+\ZZLK%U(5#",
M4 PY"GC0&)/2X7XMA.(4S1O@;5C@6("?5&/G&+4S1?>E>X6K.P@_2W0?X5^+
MT=UF;_LYHKM5A@Q'=_O>7.#*BP\-X'Q?Y9M_KG>';(4PXB#P4P9] $7B1T D
MQVR$^'S!2RXTD<Y0]HYO;\OV]53OB,UKP1F8?"_CW7FV[N=QJB,3Z2==XWUM
MSK_JJ7FN+1G9.QP*C<OR8.]JDDF><:=V_JC@3^RA/N! ^ *F3)X%@ F*AK,
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
M9^OS RZS$Z;3V+LL2[,19[C/<5W.#.Y)S,&=W2T(&P[UKC>\X/-+EQ>F4K2
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
MTU/:GSU]25DG<+( )9V"OG;3,B:]*//V^(Y@GG!U9C7+HI3G891@$HX'UK@
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
M.>Z@ VY0/]E'1"[K]A*"8:75OUP<#,I97SD>=E6MW<=%K[RU.5G/C'^^:5]
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
M2>#W<B[PKI0M;[=?T11D",<<0QIG F <ITS"2"C-19X)HV=>G1N?6YM&R,&
M.1A!!PKU33#@GB)=+D)B(VHS1V.BW$T-Q QJ^#JAVCKI,#9+5%"7[EW45N<\
M.E'=]^5]4>W&'WXLF_MHA6(19RA+,:,@Q)QRF"0C#,SXA+S/@?&KJ^X1=/\;
M@8+M4'.M N) <WW'PK7F&H5A?L5]ADY;Q9T2F5] <2>Y9Z*XTWFT4UQ5,G*5
MDPAF>0)RC@#/XC#GG(^&0)XP>TW5^OBY55.!FB**>IS9R)YSNB8*VT6F9M M
M95];F8S(6Z+VF#EP45TLN-#5C_\JFDI=VCC9 4Q$/$D03',"!$4@HZBW@T/"
M4J.4S/S3/:O'",A>/"P(T],.OUR928<135Z4XR<V+@B'/7/+T(T)^&M7;6A*
MUM&^+]6M^NX9#'5Y7L0$(Y@E<0SBD(<8X9".-C,:8?L$Q-32O+E(>Q,H?,$
M\ KE-BZRI3WTVK*\C-[DR)>+ _(TAG1[V7LUI[B]^T=;XK8M][>?]G)2H4I<
M\._K+[(=EJ)N'N,Z'L5>J3=H",[S)$D9AEF&(J1F&RC"840Q,>J#/G%X[J$=
M]-_KN]\E^*!#'XSPU46\T8'NK,F3WAP<G3!+$+Q&32^56$K S)(.O['RHK<3
MB+Z@QG.$;QE:/8NG]?R=PU#G^\OSZL3\6%#DG]7^"SVT^_J^;-[5VVK]X^S%
M89KAB%*((!=YEB01B/O[G&F&Y 31J/:>8].^U7RH-S&4>^J+Y_48@[^&/ZUK
M?;B.@J947R\ ANH\<-]=(3H6)?HFL08C6*,8^-%C(S8O2;"?L"Q$=3TY]U1H
M?7*H_T;8O<K2BZ$"'+]_V-8_RI*4N_*NVK^33;P]0> I3L(H3%%.2!(A(+"@
M,8YR ',8YI2;50EQ:MJD8UN5!_FPES!^)W*XVP3GR,U$U"W=>A)Z-9[-!/0<
M9E>X<P0:#$B##FKPU]74TX3("]KI)1[+4$X_KOWT[ILW_@Q4\[[:=^?S) *E
MWC(7+G?KJFS589)MW1Z:LSI/813S,&$R%\8T8BP'-,&]="<,(D"-==.E<>_*
M>8:WZ]>/$!O+IU/>M07T6H0;2^C+3 <GK-?54 ,N+ZNHCZ L1D>]./>SDOKC
M4%=+/Q;?:5-NJCTMFN;'75^4J2N4MZ*$9^HD"(A%CL(XQ!"B& L0ARD/ 31:
MI)U@QO.L72(+>FC!.;:A:J3A+'T*FWIJ.!.19LIGRZ$7C7N9H0MZYH#696B7
M"T=JYTW.H! Y_UIO#RJY?%]_JO?5NGVS6_/FC_+^4]FL9"*)B(AI%B=1GK(\
MA9$8[(DTC%(=29INQ;,B';$%([BN/L/_"'[C[_]F4)M\&I.7Y6A>$LW4Z")_
MP5\]/I,B[].(-"CT/ANA=L7>)Q*K5_;]$@?/"+@[WA90_MV-'[7K%F664?8O
M7,A! Q_V7^JFVO_ WZMV!;(T"6E*XA"F/,]$2A@=C0G C/:%+$UXUNWA(565
M#!UQ!7\I9(99I"V#>AGD#.29Z;4-;UXRQ^>9N9 U3J1R&1GC5"=JI\UKJM:P
M6MUM6"'($Y*Q+(DIC5(@%0X>S0'"C(X)6QNYBM[TV"8KCBZ/MIKC@4(7JO,:
M>S/I3@_#2'D,"5VJ]IBZ\:KZ6/&B_>2---;*M(JJ"ZS-CR&ORB(:QU$4AR#$
M@M$P#Q/6VT(ASI@P>N+&RH)GY1&E;!>F;S%8<J4G,/YI,E.7$<]3?3&<(SEZ
M@.8Y<BZ(RS0REZ$L$WUX^J", T8,BGWM2[S;O)4,;O_GH:G:3;564[C!*DQ
MG#  A-2R'"0)HC$8K7)(C"Y03K7E66<Z>-U>6@<P.$=H7.AP&JEZ,C0GGV:"
M=(G**\G2*V1=$"A7-"]#JIQY\W,%-8<L3=I0[*>  &!!.*,(9FE,!0<,#O:B
M-&7AY/U$+2O7VDZT6 >:0.6$S43G+#K:2[S"@M"+_)CN)!IQN@Q5<N"'SCZB
M!3.3E.C/XKX<IH0T9+'\#R0@S#"2@A>">+0:)]QHFC;5UG54Z290$"W7C";3
M.T&C/#'K1*ET29U/L4YLF>J6!<\+5B\;;W0TS)HE_2M8;2E_]\N0N)$D3G*:
M L*!6LC*$_6 WF D3,W*DAE^M&>=&M$$+_0MTSM39K3I"9)'QLSTYS6RKC2M
M>\S/!<6Q)'(9 F,+_J=;2!,XF)0(O:UVY9M]>=^N&*8PBP7%>9+$&4Y%Q)+!
M*( Y,EI0FFCJ6I,SA3#H(+I(@@RHG9 #^6'5T61-A]#Y$J C5:;YCSG'RU G
M5\[H9#^V')E7\ZG;]MQPNT*<$99PC*4\0HBH%,QH-)C&(+<KY6-LQK-JG:I)
M;"6T8'V.S;:TH#F5>DHU$XMF*G56CD,12+4(]%P!Z2D]%Y3) :?+4"47CKQ8
M^&@B-].6M^_5ON JSF .<D3R/"9I3O((I^E@,0809-,7N/7LS)!%K?M!?VT]
M-YO$XY35;?<4.EHUZI$M(%OJ@1@O<9L1NPQ%<N*)UC*W#3NZFO2/7=.7G/E/
MN9'6AZO8[?$LU+MR5VS5(XUXMWFSDSV^;/?=.TKE9@4C]5X99E&$8)B%"4%9
M/B+*>&*T".X3QSQG*?>R<SZ,*+O=\FK &10]4#.5\QH9/15<2E#,5/(<=;>^
M->+N;IR,!S??/0K5B#[ KX3*BY1.X/F"U,X1O65(\2R>UO/W#2=2_O%+L?]G
M?=ANWMP_%.L]O[LKU_OJJ\*HGDU1S^ZB),_3A$#!$YH)2M$()@RQT55M3Q \
M"_@CP5 R_FG '>PE\.";0AY4'?2@'+%WORCG#X:OYOH*TB1!GS,^CK2\#TT'
M.NA1!T?8W2^^OQ2:.57\%7+-!=Q5M!:MW<Z<U)-MMYQJ7P&HVH>Z+;9_;^K#
M@QHZMH=-M?O<O6JE*GK(L6)8I*AWS];U   03O.,H#@A(HYYR$%?UP/B-,1F
MMP5\@_&LXDR&J]U7>XG)\'*!]RCHB?.B F FTR/TH,?>)=H]^N <?G#"?[.,
MHD93.;^@WK.%<QDZ/I^[3^]7S,NS?J&YGPN#'LLM#P5$WQ^'HA7,0P(@CC$B
M@K.$AG)"$%-$F3K42#.C*^Z.37O6[><K[MZ<"I^KMR<>54?^C^E2BNM8Z.GY
M%<-@IMYN(^"I^)P)EQ=4V5-0EJ'!OIS[J?B<1PZ=Z.LJ3E4Y*9QE:9AG&0,B
MR>/19D*XT7;:-$O75D^'2ODZJPZ$T2FACG5P09IG*W':]/X"BJ;OBXF &3)D
M^!3&'^7^2[V1:>K#H2O=B=OV</_0Y:;_:,L-_M1VR%91!*%$P& 8"101@?,0
MQ*&("4@IB./8XBD,5Z:]G^/NT-X$ UXUF52(;[J-FC/0@4(=_#7BMGL4PUD\
M]*3OBJ$PTT+W4?#Y+(8FGQ</E'L)S#)4U)=SSS^+X8=#[1((ZR_EYK M;^].
M*>B;3;G;5W=5N>D>1FKQ^K\/52._VFU&V5<;=0IGV5<G/:T.P) (P+A,5"D-
M>08(%UF_.A#'&4ZTRH9>"YMGI1[=">J[H-AVC5Q5!)!?/<A_\46]7O;05&O#
MY=C9 ZBGW$N.G9FTGX?MY$MP<J9_HJX-1G?ZT@\GAX+!HZ%&\_4>17(<DPO#
MP[6BOXSQXVK>/ZU*<=4HF(] HMI5^_)M]54]PK>7?;"2YI_ ;-\5S?[VCAS:
M:E>V+:WO/U6[3DA/.!,>R?\/,<V3'&6)8)B2 2<,*4!V8]!<Z.8<A4;%JHX.
M!47GD>T8-%L(34>A)4;/?ASJO?F]<R<X^?/S2-0&RB?U3T:O@C.W%C0B.8J/
MUI@T=UM8VJ@TN_\OCDO7B83NR#2:[*"TW2NC[YI:U,U]\69WI_YXC +$@B4,
MHS@6(%-'8%"(1Q0\H49WY%S;GG%4>6CJH$,8R']PV)H.)LY9UQLJKDFXV4!P
M5/(SJ#>!!!MT:(,SN%<7>$-6+\BWK_@L0YR]>5?/T\KUA+5M]JO_*K:'\47#
M_W4HMM7=CVKW&:_7ZM9.>USM(H!2]8 A%B'/DXCG\BL@\AAQP0 AKY5=<VC)
M8T;':3 *YTT0@=_#_"8XHNZ6$4ZX@Q&XJ\5C2=%9/Y9?/>W#^AP^TVT]!."Z
M/=6'0[6WQNJJ/YX= .M>H8ISE"0< 29"C,*<QAF(1ON8Z166=&_5=W)CUT\?
MG=@T>.'.0U2FBJ7/@,RBF0:QF$D[GU!J):&V85FZDEK[I2VHTYC3>ET/;[?U
MMT(R(=.J>O^E;/J+_*ULHI7\[D[=EVC'\N9)1F&.<80([]YMSB(\F!<,4:TR
M<\Z->E;5(U0U60PZL$.M@_$Z\(C7YB$YI^Q?EL^K$F^FGK\0YP9O^5V+>[NG
M_5S&0.^=/P-^GAF&O%&\@%< O;A5>VZ:EF/00U-O#NM]4^X/S6ZT27* HS!/
M$TX$P11&.(Q'FP A8#7P6%F:=;09$ 8#1!\=[3D2='K7)/(6UJ6F^?)2/W+
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
M!B[XTUML6Z#U7^.F3>?!J,S?E\6723RJ]D7YH%ASN4YKN&WQ?AN5Y6H_U%R
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
MDP%D@N%E)8N7$806A"M>S:A T)3]5&,O_HOE45OP]KJ#VNN^.+9SVELQ$S"
M1XD1#&NC)1:&@6K 8&MK^;SVD$F\@D6N$Y1[GI8:T6F_C- K1"WB A-#@&7:
M,%7)2*U(N;$J&T]+SY)BO! >M05O_T<#NS)!7<S)@,>>>X\MBA'6%B.#PT*P
M.I>!4@A/SG<R\'%\FU\MI_F[Z^=2K%12Y\"P?B,9<\8IYATQD#*- P45KI!
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
MBI6!UDIDZ(:LU!*.DEZ_&V):AX[X\C3349=*..^,<>Z<Z>>9.(#RU#J(+*%
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
MF_O)7[Y_(1GBH41@)D1>9@)"R"PA3FD@N"%,X<JQ(BA/>M(-#ON4N'.G51N
M?Z=8_PGDWJ\0O<T7D_'W)+X7F4V.DU5F"V20!5I0QZ1=OP9"/632U'+<]N$,
M^G@;5#)7R\5M44[^>3##_.&*66!W$"],= Q)A63XB\"5Q)CIUYEMKC8-#KJ'
M$K$^CYMQW>EWR\4\)H4.AGY#:CVHF3'EG*<,$@>1@,I #"IYD44BY06809J_
MO7/K=+#/X(8,J\B[<@71U<H)]CXO5U+4\TSNJQU,? F181(9%S:=D@A$MG(C
MXGN-&7GQ)&L?\#,0K<'B>*!61H.,&"F'%0#:,A&DU5LYO4C9O0_R[GQ?Q$H$
M^FR$.OJ6SYX:F8ON5T*PDBQ,TMCIZ(S=R >,3GFI<Y#II/HETDD@GXU$]0RK
M0]4RX@E@F(4E/K[RP2SD FPE=2;%M3W(QZW[I=/I2/>\0W\ RPXOZ!!VZ>N>
MK((MGO6OV8:]3DL9MPPPYX,9+!%07,:XZ? 7)H3U0LE:ZW4WF/R6+[[[I@](
M_*A<!AUT&B(-E1(<"NR$V\CC@-7TXJZI=J;OHCV4>XV!/G*X\7[U#E7X>1FO
M#]A\_6>-@97>>":(!0X2(;2#GDA/D#45:A[5&VLOYR9(7\SL73'GIK,ORGQR
M,UO?J1I_^U2.9O,@123$[&KUK^F:'E?_N9PO-IG_UC 4Y>H7BT4Y^;Q<K)YF
M*=9^ZA.8WTD_,D:=, YBA37'@!I-@:YTP0#J=0+O?I#T2=Z:XV8(:CWW$/M]
M%C">QGWV+Z/)+"KCW<P&-7P)DG\)V_!R,@^FKEV6X;]K]=0(A&C_8UG8L4G&
M)6*$>6$%-DSS"E6L::\I4E_E8.E-=^<>$5&T#_EX.IK/)]>3\9,9(+Y#K=Z9
M-X^$3Q@2"5_+J.;6*J:#W:!CIFQD)-CB"FB*E57?M?WXF=U/KW%H]*?#<X^-
M[2,CUT4Y?_3(2-<F6$M?SHCGQ@!K@++.NS A:28W>$/$8<H]O0'>]AS@8#F/
M(GMTZ#X5N,;B<*!6YH +BR<@4'N@-3?>&53)&7228O@,,):OKZUT>XB?RZT[
M?W<=WQ#ST^+/0;S@N>U,,]?MLVJ9HU+$=*9* XF117%I7,.OO"6"G-5/&[O[
MOBR^3 *^^MOO\Y@\89NG0X6]XY?U5'8<@^:-93YF$ ^&M!*"24IB4)"JD)'"
M7++'-X$FS]V[W>+>UU)SVJD!QA1#@(+1:2%5V@A?+><:A#4TY;!YD!SJ4MT'
M#PZ: =W?%;[*QII_*L*>I9B-)]/\4<\_%>U-<EU\+F-A>6; (LB%9-I8+RW?
M(HN33/A!A@WV2.$!Z*N_+%5!T^/)B@'A[]-\X_=5=W'3\<_5SP\PNT[UC&ED
ME-3.!O.48*B@T[B2W(HDI@YRLCTO?9YEMVI=0WUQ\[N'-;[D^NYZ?2,DOJRX
M0?< ,8_6S2!!(N8&M]P:10Q#K-HS14!QRDV>^O-GWV[#05&S;1WUQ4N]G$]F
M^7P>=L^?)[.5\O6HO G2O%^6X]O1/(^2171O9O&D( RUY4%OWVD-9@(1H907
MPA,2_FH)A&R+CDH*O1VNXWM0#.Y%<;W=MXV1?3KT>>5JRF?S8XO_[@J9,4AJ
M@KW$8=1Z8S76FY-?#86S%Q<1/BA&MJ*3OACWU-O^9O8L%^?!S&"UZF>,H[!Z
M0.R)$II*RH/0E>P!DQ0^U@\L?]739!=ZZO4,< <HE2MNZYT[=II7IXW, $YM
M6!N0]$Y#3#1'?CM.K4[)9S?$E^2&1-*NE'2^R70KS";?40U/5?U&,FR9MU9K
MZPD/JXOA@L,*A9CE+8&J@TR]."BR=J:G\[&U>N(F0)M/OL1#[D8\?5X](X(Y
M8J2VE$'&/-#8VDIRYEU2=JL3%_Y.&=H%*8[R+AGW\S$N>AIF0>6'T\\>K)=A
M8CPW'E$G-);6(:>K\PU$@$])#'&J%^GR.'8ZX&=<?!^;$\>> ZW70 :LTTAA
M *FF$&"NK=E*;R1,R15QJLOG\NC6 O+G7T8W+\6=M(9NZF9(*N*"UBQ&P;(U
MC#%4[<@0L/#B/#EG74!/ _W,$]SSE^6:SW'/V\B\YEQ+ZIBG4D(K$=65@Q0Q
MZ%/.9@:9"^!\TUPR^.?W%6X>ISO)3[BIFP$,A/%24B&4!8C08,!6,G,M+BY;
MP%D(EP;Z4$RYI+EN5RL9MT C03VT)H;K(H*]V,[X)BD+\R ]*0,PZDZ'O\>X
MQIK.I%:B:V/6/6J<9Q@P9CP)NW>R"?<.VRPL4]QYC1_!Z#[ O@<*=H;]F1FX
MCL]H*<[[0&.9(=XH&U-1.^(]Q]*Y:GD0EM7+,OJ2 AS[C/-N#_?>\F^.OFU\
M[VK\7\M)F0>1PE!:?'L_'<T6:G85HX?NCQS$U6\D4T2&H4@44Y 2B)GAC%0H
M0(0NSGG<)5&>YNCL2@M]<]$79>CZ.,^OYO%ZZ\K$V %8#4+6;"ECU#I, %#8
M>4F]Y)17YT6"!>OE(H,6ST#-;O31&S\?='T=6KG>ZZ\\F0T)VK"IS'+-D,9*
M0Z$) 5!_C^*0 9R4FS4#?)RX3VIVJXES<--.5KU>+,L@315+69N.>VJ'-0.
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
MN _"O/R0SQ?E9+R*>@K%5$3HMWSQ[CJ@=9U/%LOR8&*$Y+8S"!P1TIBPL&"
M.3=>T*W%8V1*+'SCZ_&O8'7O3#-#F#F[(7/MIC-HXO.' @-OD61AI;';HQ\C
MH$MQ7 _RYOX09MX.%--?.,!_+N>+5:#IIV+/.72\F'M]G8\7\59X=47JL1UT
M,'"@E2]D0BJ%"'-"2P4)5%Y]QX\)V.NM_DLB]GGT,R1^KP3Z_%2@#_GZ-<]\
MDZUW/=X_Y./B9K9JY=C#Y5U_.N->2AU?(Q-8A\VO)=141RG&8)YBMC1/.7 Y
M-O; ]-:;4;.RRJ*4 < PX.-^-F(;EKKP@\;3_BG-95PKJI23GABK(?6.H2ID
MSE %4H*!&B1)D&M&S_*;&/YP$9SN01O'>;HGY>)*XE6'\NG5I\(4875]W,75
MN"K7UV%^OP_#*-A;X<>?BB>&U^]AE,W57;&<[;J#TMW',FR5)0QC[SF'@ -J
MX79$8PI3TC@V2-EP0;P=C*YZR_&W)\@JYCQ9;26"X.]CNLM CD40[?-R$4-U
M/A7O5_HZ,!$GMIQ1C)R6P'IDE,?"8^YYA9=TM-_[VY=C9?2KEI,GYSK&D U#
M<!R4/M_E(=\W$2<WG"&!C=2. $81-AIPH2M/9\P&FD3,5WDH=Q:]G'N"M<%&
M_[+*-#W_]^5H.KG^%N\BS_\MO[K).YIY4S^9$2J\I%8+::DR7#G+JR7,:H]2
MTKG"5WS -Q!]]1:+N [PCCG65[Z==]>_Y7^J\3A:2=&_64YFX\G]-("PWL>^
MNU97Q?VQY\A.;C3SP*IX)4]([PV,E_VEJU#BV*6<&,)!/@S36SAC7SKI]?SE
M0WZ_+,>W<=>J9E<?\D58E'8<,QT[:ZG93*8@==X$[(5 G&$9#*XJ]M.BL-*E
ML+/^(>'C+=ZGBYEZ.U3%L$AYS&G<H)4,.^LD=,':DD9I[!D$U>&HE50G90.H
M?];WNBEYBB;Z8N1IB6H!0H!X::W5!CAE#:35QM):1Y(FNN;ILR^&3BD@O[S;
M*<!B[I@E7A@C# /&ZNK.LH4LR6F$&A]-K2\5N-G+=HFV"_E+N9S"A EH6 6M
M ]PIH!Q&6ZF03LEMBTZ\YW0I1$I&NX>4:-^WWF]F\T6Y7/FEPDH<]]YQ$SX.
MOYHL)OG<CR;E.@KR^L%VW<;K\=/YXV[WF"ZM=O?M9#Z>%O-EK<SA":UF0B+*
M*5$02@:8Q]!JB@W1S@/C!:IUV:L;K+8:G#]0H!Y-1[-Q_O$VSQ=O8V<"?_2W
M[P7B&Q51KD^AN_K;!@";SR<WLU798VG:NOMH1@P00'.%H"$QDZ&P&%=(.R8O
M+"MW+YPL!JJ\$Q?3>;EX,#S"OYX.C?"C[$.\7[ G:=RCWV> *TD)]]8BI S3
MQ'A2]1E)E70>,CS"#4'Y1;H:.J?.WHPJ3TIDVEO  8+0<B&=L88IM>FW]8(E
M/5 R'/J<J*NGFCX)LRYU_>OHZ^1N>7=0VX_*9)XQ0I0'H;= 4FD8]7+;=X,O
M))?DR1HKVL&MOPN(.];?7T:3670W;*>Z#_ET_8[7[>3^2"+2TQK,'!"6 !DF
M4"'"+H3[&/*^00<XU6LR@5>U"/6JM[Y8O:.W1U.A[JV3 8(P$\1:ID6\B@E,
M '4C(Q6HUP279[+(6R1"T0WLO?DZ1_-;/RW^W/3[>+[47>4S;92SDA@%-3;:
M"JIH94 X8MR%;?):T/%39V8+J)YSB?TPF?]QPD):5<NXHMPIPZ%$G%OEN'&5
M.>($(RF!PP.,K7PAR^6)VNF?AP^A.;HN'JJ6D; +<@$P+@$@4@(#.*LDA2@I
M?^\ Y[%VE+Z72<GX]L4D7Y1Y&$;NZ_@V;I'6N5:.KH0':F7>H# 2 2+"42N\
MM,96<GJI=-(%GB'S*$7E3[V:K<%[)AIMSJ6:\NA1M4PBYAG@2!,,@=8<60$K
M2;V#*<&  ]Q']D&D%'Q[WN\]6-V/&%>[*V02>\@(CN\Y N&<93''WDHZ&#!C
M*3N]QC<#7J59U8I>SL>ZNDZ&9U4R;CCUU"IKM'2,(XR,KB0$YM+>XDU5\U'6
MG(1J;_%UQ>QJT]7\^'*WHW2FO0/.&\4]P/&18<6(K^2R4%P\6YJJ]VE,73*D
M_>W9JFZN[XT$&+YO/8Y2IT;M#-!X?,XU9@P1S2@F2%5R"\)2PC8':#"U3J7V
M(>Z+6KL6^B-6T[XJF0L2"<9 $-$+QX)L8N/\A1 BGY+F=(#WR@9H-[6DF7-R
M[ZCMM+]2YKE3(N8>E@ ZKI6@#%12:JLO) :A/6778,])R/9[*7=91K34?)XO
MCC\CM:]*!A4&091@=4*IJ6%(:%E):*B[,-=3&ZK>>?TU&=E>N1,LP'%S^NRN
ME2$LM F;%>J#J>"E0IYO)FV(D+JT-W^Z8E KX/:6'FX\+I=!)9/1Y\ET%9]:
MYP6RG54R9R D#GCEE,(8.NIQM>M%0J&4@*H!GN5U0)^6D#W3!-2$0\>J9E(
MBPCR4C*MPHX#(NXJB9VD*1G<!^C ['XJ2D6X_[/=[S=:WM9XP>Y@O0R%==H2
MH@VTQ$(CG1.; 'N($94I07D#S,4^P&U=F^KIGXJ?\O+NW76%4"T6/JZ2$644
M\R8,7N-I&'2$"K264 !&<-*=XN$1L"5M[^50$KC]T^>W8IU":F]BQF-5LH"0
MAUH#IA0%1@?HUG.U1\AAR'I]7?KETR<)W/[IL_-FYV_YHM%%R6.-9,Q" 0 @
M#G,M%)-(*5T-(FI,BN=S@,9[UQ1K&>[^2;?>NM:BUKIH1C3$*EBD&EFG*02<
M0%Q)A'1:,I8A)J_J0ME[^702QOVSYL$NHQ9U'I3/F%-8&Q1&&^3>,!HFWTHV
M2#%-2G3PZOES.M!#RG%07=YX-_LKQ<&!Z^28 <,M=<H*9Z#7E@J'*0VVL.$*
MREK!7SUB=?!*COZV3AKT_2'M'7O7QT',QU(>]->)#%AEPY#"4 5=!!.":<DK
M33A"+NPXKQ?.)M_VZTF9+RUBU%$/(!>,4REXO +'8@:WM72 FU=P >+<M*D7
M0=I,3R\Q@I0R!XTF$CLN!>%*6 HJ":W$*3O1 3(Q5<UU(TB;H7HY88&$\S#L
MK +84$:(5%+JC=Q"29#T1M1+8%-3]9\0%M@,XF'D"@H&AK8QX1(@'%$$G/+5
M^!+6)]%BT![5P2UW*6H94.X@J*B0R"F%K&6**$2W0R"Z#R]CECE15_MR!S7"
M;%BY@YS@1F+$D I3J0H,)PY7?0=&IQPH#U'?336V-W=0,]Q><F(#@'',LN0T
M5MQ"+..,N)%4"BE2MOZ#/D\9W +3@;9><J(#;3G!0 LL*%,,:DJHJ20-BK_8
M2(04I3=)=- ,WY=\0ST )I%1FBOF)#/*"&XK28'6*2%Z@V92BM*;W%!OAF]?
M3-HS:Q]9*@_4RFR0R%JH'8-&,6 @_RXGXC3EWL( 0SU?P$K9GK+.3,JC*^7!
M>IE"F@3<.':(., 5L0_6!W=IN5Q:T7H])IV$;U]<^CB:YO,/^9=\MHR'\$?7
MR)WE,V1B0KB($X+4,N.10!O9%$'JPD[^6M+ST_<96D"V+]:88KYX=[WJ\?%,
MBD_+9@PABXWV''%FJ>)<6+V5B2:]Y#I ;V0W;$E%M>];,\5]7HX6*W]ZA,-]
MC0_([O<X-JF>:2J\ RJ^5P\04L!C5ZW\"G&4XHX<H/.A&SYU /0Y_5GGR(4-
MP@@,0U YHYW!%GM'JD,G9:5/F=8&F$WA!5CVO>BQYYB#EG)C<Z@"J,12@F+V
M 8L0J\P*32B[D-< ^B)"[=S8S6#OS9IK)3<VY1I@:Y1"6#NH),6DVC7IL&VZ
ML/UC"SJNE1N[&:J#6'+?-KK >JB!##L?PX(\0AHB1X/(AFVQ5#!E21W@3=:7
MOJ2>JK>^6+O97!_B954DP\!R"R@@ A+G+??"DTH"R^"%A>6UK=:B%53[]6;\
M4A17,7[[8UY^F8SS^<?B.V)[W1J[*F4T3/I,A*T1\YAX*6G<?J^E-![[7N_V
MO'CNM(;S2[Q(+[0E3G,G"6? 4ZF5J%9_@YQ-.;X>H&>C8R:UA/)9;:S?BL7!
M&-4M7+_EC>];-6D["[.ULA[(,.RX9$8 A*K0IGBA)869+^T8LTUF]J..7IV_
MIK@+ZKS-9_.5?-%<_7U6YJ/IY)_YU<X[CJJ<S&-8][(,_WV_>H1;Y]=%F7\:
M?3WF*V[W:YF&-@)(G3':P[#[PK"*^C1 )&UJ7YI/+YWFYU?0(/;''_+Q=#2?
M3ZXG^94/.E#C\?)N.8W#_)UY\V:V*#:^]^OK/%XBS-\79>3."5-Z"Y_,)%/6
M8N"@]%I1*QG$E;9-V"FF6+,O;0_>T4S?OY:&,@Z*FUD<]F]F:\'>S/(GH@63
M?YVWQGT=3Y=7:URV\L_R^?Q3/H_'56F#H]5^9#R8DMYZQBQGJYR^U%=^8Z,T
M2O$=\+]&S(!4-Z1L$<%<S/]*"_']BCVT&EL==G/44XB%,5@@Z(P/EC*GIMX)
MUV"P^A14J4-O_F@7K&VS&8/ >\JAYI)@3)#@QE=H$< O[&627GA59Q[K1CU#
MFI96QPU_S4L/^*.@XF%=(888[H''C)FU*GD\T:L5K-11*.CX-K]:3A_E97H@
MWYO9]I3IW;6?S$:S\60T?5_,)Y$\VZQ.=::JEK^4A7V>"(MV&!Y(>6B!T)A4
MF HM7\-A3=OL>QJ<>E:-]18,?5C*RNK<(VU>7A?E74P[W,(8:/ZMC&O*I#10
M TFIIA!Y 3>86HCDA875#G 4=*ZS/A;VZ'%;3!8!KK.GF@N**V9A9[;,K]ZM
MPU*+651Q^,5],1]-?RF+Y?V\SGK=K*7 #XYC?GB+8=@-XF!L:;S2"D52(5<K
M749GF'SO<-CQA@UM=(WNDL\$$2=7FW\<!N>D)C,B 4#"60(-98QBQ("H4$(H
M*87E$%?=KCCT=)_0CSIZ\P ^%"<>:>T2Y(';?U.\+E_KMYAY)[UB$G.J.?%"
M"RJW"O'$L M;'L]!U\ZTT>_"=V97VMF6/<,YAS[,(9)):I!57J]G$$:4,:S6
M+;X>9I'YX5FQJ=LLL>D,(:2=D4)S3+7'V &'*M08N+2[CYUQZM"\TKU:^IA@
MBO%JFQ"P<D&"Q;<WL]5^X*%YUF"RF92?U]F=($)B-5CB3[)#7SDP9=2NFUG.
M& 0:2VT<<\18"!FFCF&/)8#U/,6[)HEY-4O,\_'?;HHO/U_ED_4$$?[R=%X(
M/\H^YN-E&3H)T>=/D\7.',B[BF6Q_\1 B!WUV@4R8(XV B@*[86,UPX46K0&
M:CWCLS$C/I6C.$=\_';WN=AE03XKDX5]M]',*F>L<5YP@2"ON@V]E)=A$W;+
MA11$.R)"1<\JT\QOH[MCT\/#HAETR%H>GYY 5'++B=*P$L(8FY+K9T!AM_U,
M$0G =L2.M9SJZBIH:+[RU+TKWY?%E\ELO(\EAZID@'+!L<!.!TO'8$VU!I50
M#J*4[(@#"H7MEBTM MPI:V*027E?K.W.53]-#"TIOYGBZC!Y#M;,XDL TG-L
M&.&(>4L451L1-1<FQ2@94)QI'QQJ$^>.J%0A$%;.V?J$[$,>>KS++C]4//.8
M6Z\D9$(P)16DR%9KK7:"I"Q3 XK,[)8T+8';,5/4;+8<36NQY&'1+$R;2"*@
MK%'"$>2P_$YWZZ2YC$C$?AB2 &Q_%QGO[N*D5XS_^'@;()N_6R[FB]$LVN<'
M7&"'JF6!ZU9+SZCGB BH. >^DM1HG.(V%Z^!0AV W*F%\R&_F4119XL#NZ9=
M13.!+ 96$L@ \]!!QE$U8QIDDJY,R]? E): [90=)H]W)J=O9E?YU_^=?SM(
MCR=E,Z]IF"\MT)(Z[QPSG(I*#.QARF($P>LB2!JT79NUX2/'3-E0) -<0N0D
M)IR&60X#*02N.NTE2(H?>#6>V 1$.YTH_&2:_[;<DTAH5[%@<#-LD0'8$XZA
M)09R4W7>*9GTR,2K<<8FHMKQS+"^O.EF5S9LRX],$8_*9D8I;3P%0 =[FP$"
M+*T,I+ M0TG9UU^-2[8-:#MBB K]NHI]\]/1KJW*LS(9@\(X)!0-YK$UB,1T
M6U6W"4Z[L?)JW*XID'8\5_C)?#R:_M]\5/KPDUTYFPZ4SJ3TP1HB&&HJ ";0
MPY@:9B6*0T8FO8/W:ARJ[8#;"T_64UI]ICPHGRDBD#)2RP (@])9)JL),)YD
MUWI >A]77IT?-17>CMABEF7YB,F'C9!]Q3,MK77.&4P(X@"K:%)5PF KDNR0
M5^-1;0G=3O<O_\BGT_\]*_Z<?<Q'\V*67[V9SY='-C-[ZF1*2NRTPXH*QX5%
M6,3<BVNQ.*))CTV_"A]JVQ!WRIS_**;+H*ARM0LK]RU'.\MFAGLK*(@QBH3$
M&1,:M%U9!4C*H?O*?*AIT';N&RE-F/!NBO*P"_51R4P2;CGB&E"D(;;><UI%
MSSBE6=(-AE?F0$T!ME-N?+P;3:=Z.9_$Q"0'N?&H9!9OT_(@-K1.$$X8T4QO
M1/ ,N93#%_1JG*GIP';*#7>7E_%NZR]E\>?B-B92&\T.SQ\[:V1< >\% 09I
MHKDU3NKJ\-H'^J=X6M$K\[2V 7"W\\EML)CJ4.5AP<Q211%53EH!G0(V[/3I
MEO1"D!2&O!IW:S*NG1+C_?+S=#+VTV*T+Z+H6;E, LT$0%8#B!'BQ#A;G2]Y
MQ9)>#4&OQN>:"FNWY_O-(HCJ5<R\,H!:Q Q36!,/O(#5(90'(BD,#;T:;VSK
M.'=*I$^CKV^N @R3Z\GZ18H:A\%[Z@2QE%0@3)2 <^D\0O#[<HH<2IIV7HV#
MMDV(^[B8L?GC;;#"X4'6["B?A3V;\HA);N*F7],@@EV+0P E-FFG_&K<M&W!
MVP=;3/CKN_)3\>>N3"<'2F?:6.*)])HH$S-1.4)8)8J#(&DO],I\LZG@]L&3
M]T58+*?_;W)_]+[.K@H9$H9Y0HVF +) =1 FS$J@8+JEO#2*7IE_M@5\NSHK
MC+TK\]$!BCPLD@FH/.!(2.P 8>%/CW75:1NV=0FDP*_&+9N :$<T>%O$@^S;
M8G8XCO%IL<P Q1"@/G0]+(4!""BVBR,S2;8'?C6>V$14N]TCKX^OUS>!XLWW
MH*>]82>'J@2>FS#-08*18$ X[K'=\ARY)'\*?F6.V%80[OCJ<$!XM$HZ;T>+
MT:;#!VFSNTH6]O*8PFA2.>,HY)#93;0_@5::I%?!7IEWMA6$O].FL^1![NY^
M6GS+<YW/\NO)8G[NW)S1H9W/YJ/- PL?\L6D7"4\;91'NT$KF?#82$ZPXXR'
M#86Q'F[R.7&!"#ACWFP;-#++KU;/R4T^+Z,P[Z>C67RX\/O[% =0J%4_4XP&
M@Y@IH)1QD&-KK-O(+VWB[:GAC/E.F?$L(W_[N/=UTW=/WS?31/GK:!$ GMT\
M^GU>CO.8D7CUR^9\K-]VQH6D2#'@, :"!8L=8U]AIC5,<MC^Q=4^=#)\'G="
MX(Q9S;D2"AN%.#+!;(157GH)B4X)U1R09?4RF-M0&6>F[*^CKY.[Y=TZ2\3#
M7\Z#.)7Y=C)WF[2>1=@T)9S(@!.55"I?J4JZ8!$GD'A I_0#('&'6CG#GN*\
M:8_[WU$X+<*< @S4RCIG%=":;3+$<NUPK9#);K!X'U]'70FP>C(U^LC+K23;
M+6"C-,>G-IDAHH0#0!C%D2;"&:IAA9+ ,.EVU,N>3&KSISB+*GJ80;8/^_R:
MCV)75Z^@G&T&V?;F.W9ULJ0?JI8Y'R!WFCF+H$=2"P_M"G(BF./U,H'V)VV=
MB>!@O4P3Q(@C1GL@B39(.8&W\FJ:<I8UP-'>CNJ+[@ ^UQ@.MLR7O%Q,/D]7
MCR&<^1&_3@:VX(9:@JT7#)&P T82K/3 @==0U8IP[LH0VF)O\\^+%?9U!O;!
M>IEBSL3W8(+129043GNTD1<">W$/?+:C^F<9W-H#^%P#^]SG!ET,90Z -Q83
MIN*K-?' ADEL*-80$*SJA7!U+*V:S_/5ZW1O)Z//D^GJ7;J-6J[>S3[$5-EE
M?+1N=O5;,2NK?^K1?+)^0+4.-*G?R(ST$IH5@$1;:XV58H-C(#1.N?3QTJ:(
MVI3:M_;WK(R^?%];^?2W![.*+_/_6N:S\3?U=;(K#J)![0PH@EW,I:J$=4BJ
MF,"NDAMPG)0%;, D[(\O^QC;FDYZY^*N?MOB;C0Y].IAC=J9)= 1:RB"1"J*
M#=>$5W)K@9+R-@R8BVTP81_+6D/[G"R;;\?CK_F>R, FU3-'/7$:*.L@63VW
M1RC<2*X5AI=JF[?!A1H\2X3[#$OK]J__-LG+\/W;;V_S+_FT_NIZH(',"BPA
MTD)#;>-K310[5TD/_*6]$CVH!;8]M9QU]GLNQDFK[=YV,D@)8AB&Q85Q;14%
M,0_A!@MM+BW4J6V"U)D26X*^=QJ^F=TO%_,5*+#^VON\5N:$X<P(+Q7$B%I+
M-;.5G$Z E BE(5.L70[L8UHRWN?D%3J)5YM:F468,&^!@, (*:EQI'(<& !)
M2FCVD%?7WGEU&M[GY!4^B5>;6AF6BDGK*8$$<QD,8V^W<B*2]&CI ./2SL>K
MT_#NBU=F-+\-%FK\P_W7<O)E-(W '-D7[*^40>Z%8BR8KQP:KRFG$%12<@U2
MGC\=,JO.MA=H315]$>Y#/E^4D_$BO]K=]=T_/3K3I32;28@5!(0SQ!B(@<Q2
M;H>F-C0IM??P2-L&98JSH=\73W\M9OFW7T?E'_G"+V=7QQFXNT(6C%1+-!""
M(XB\Y$2BRK]IO74IYML N=4/$8H.D._=D$M8,MY.9OF;17Y7RW?7QG<RC(04
M@&&B*,:$*JQ,-3%8%Y:NRXK_/O^R?D[M]342UJ+M.#2O$;UQM&XF),,ZB PI
M)4%FBL,<4LD<I$[)F3# >?=,?"FZU<IY-T$[Y&B\)]K11A9L*P0HP(ARQ9DF
MAFJU79>POC"+H$5.U-KZI"/>V_SW9329QE7"%^7'T/F/<32N!NRAB6]OI<PQ
M*)"4$%&OG+#4(5DY1!W12:_=#=!1V!VO6H.X+R*M;EF%J3T/8R!VN]&\=;QR
M1E# B[$P4@"C,5:#>Q.DUH(QPKVZ,$]A=\1J'>ISGMG^8[*X_7U6?)[GY4J:
MM<<S9CF8C8/=,5J_>__0OE@!^ZD<S>9!WS')[+OKM8.TX2EOBU_.L!0HH$L9
M"O^3SF/BX79 0Y\R9];?U\@UM6?YS2ALG#^]8(8/2UW]7=\NPXB."7_6R![@
M\].BF4",:,218\!@;RD/TE42&852 A,&E,:Z>^8E GOV/>\I>]T,D+!.* -1
MV+!1(9U@2FV' TFZ@=,\B76Q&$U?*'G:0K@O%CW8VY_F/JG70*8 U5P;X@E1
MC'MNA$,;Z3WF(N7ML 'N*(;A0^E$-?VOA _$J+4</BB?(>N0T3#LLA!DREJK
M,*MDXR;M]=3AT:YMA>]=&$^'>!CSVLGS6080D3&*QV(MPI]A95 ;:2%A#O8;
M0M7Y.MDQH5K%^ER75B_P^KE4R&H2TUE3HB56 JI-:BLA$<"U@ABZD?;C^#:_
M6D[S=]=-E]CO)VEUKJNW^IT,*(  \<9H Z@0AI+-G6XFE)27M@JU0ZUB. KI
M86;YI2BN_IQ,IU7:G3>AC=E-O,S_V _P_[/WI<UMY$C:_V@7]_$19T=ON&V_
MMGLF]A."+95DSE"DEH?;GE__ B2+EB61K"K41=J]&],VNPJ%?/)!(@$D,GLW
M+T\Z]KQ/M98)M=H)5& (.?-2,2N TXJ+73I(0IB)2[/A#% E.:I8F'H-Q?4H
MBHA@RK7W)LZV$ *U1X1+[W,JJ-8V(5^*Y5^+CHU(1WQ9]*B$$9@-OUDGF!Y2
MUOG_;%MW7U,&L6+H3!O#F!6LE1'<DJA&)8V47) =33A&V/D!T^H\F=ZF\^DZ
M+K"^%"\D.I=LHWHCP4,)+= HSG>.H4AC+DR)A*;@)S<GE7ERW$EI5P%]K9I_
MGT?34J3J%-NUS9O%K@S?F1C^$V\%:@R'7"(B"/4.Q?7A04Y,E+NRM"U=$&#1
M%=@#D^KLM=R3[P4C@.:(>VJA]-IK"2DH9;6*7%DJEE:T7HU)C?#M+;QNL5J_
MNTNA-.>CZ%\\&X1QED<7SAMIB>7:*>U*F5!TYZYMUFM)PR\RS>7AVA=7WCT6
MRTFJMK3W><\2YO47 N->@>C?6X81CP@I8FDIG8!9.89'>'35#6=:@;:W&*7C
M<_>;*M<E*KP>D+  2^ 11,)AIC1A:"\YH5+GG+>/D%0]^$4=H#X"OKVR='\;
ME^F?_BYF7XH_%O/UYX9,K-!P$)YHJ!Q&7F*3DAU)4JJ"<.JN+<-8JP2JSL[V
M-3%.WOYO,5E^^GO1&EWW[05(.7;1 _8 <!.1T<S8$ANIT959TA&QM)D"1DS.
M^/F3N6R;M1@\]QARX!@G4 B*H0*EDT.<Q%EU5'\1M ,5C)>B?K$YF:.E48/!
M@92ORSKGN25>0,(AW*-#XU(N9X]NC#=RQT70!AH8,3_CL^WR,SX;@(%",8"0
MCZM-09UD7)7H&*RN++!];/RLKX%Q\E/=1=VU3M(?6@U1(2I5:J.,,J2H -;(
M$B=L:;]1]#\34W/4<)ZNJ=;WEH00(;&EX+;Z]ZZ+L]3%Z:&+DVT7[[8'[Y,G
M'=T&:[Y"NX8M!6\\9H1Y))%0A'@I'#O(*$7."2[_2:C6#_2]W0=ZTL]W=\<"
MR%Z[%'3RQ8" !=HCCQ#C&CEFXS\'WP21G"N[M=?7UQ,JT"KH(X@T*O_[SQE8
M1*%1U$H/!(KN$&<"Q56E,BGW9]J>&[!8YT&.F__;3.,PLYL4$_N^6$X7MU7$
M?^6U (#0%EHJ%3,ZFEFH'8[2QE%@4SVI*SMZ[X@)QR(1\P'O:\(IN_QA,9OY
MQ?+OR;(*HYX\':#!Z48;,EHPZ)$67J ]6,(@>F4GJ_T2J3G.??.G FE"N@:D
MJ378<6(L(YIR44J H>TU(_KC=E!^7$^6ZU[XTDB31UA1$\B^J?!^L[SY/(G+
MN9N;Q6:>X@74[;\VJ_4/I7M/\.3D^P%Q&'TR:#P'DG.:KGZXO>P2"YU3>7[4
MGFR;!&H3X;[9%3$HIO=SLXE:FM]\VZ8%F6TU^=MD.G^S6%6AV/E& B4< TV1
M4\@0ISR&JL18 D"O+'%U%RQK'>0QSFF&*J:A =M\\-H0X&$YPTOELZI\U#YV
MV<UI;GY[<52I">,(ELHOG+^?<LGL -&:(0JQ\ 9!;ZC<;9PPCA0GX[ACW,M=
M'&Q ].\),0AIR2AAJ9;2'@D W955^^F()<UOXM2#?P1G6_K;'Y-_+99F-EF=
MJZY1HY4 A=,RY2CR$&#.K);^ '5*V7]=-.R"(-5/L#+!'P$)O_?_[>2A.%]B
MKUY+@5C'@(NP6VH$4D9!:?9XI QL5W9MK!.F5&=C"QKHBY'O)]$MVF:VO/D\
M7\P6]]_.WNHX]DIPTE%)N?)44&8!58B04D)GP=7=!NJ, 8M. .^+4G%Q>5LD
ML<_?*'O^:$CI!;2/\T$<@]!'5T5S6DK$KG!'J2\*90+=VVW$S6J]>"B6'XK=
MYL3J\_2QPKW$XV]%.1T23 L).9).,>DQWLM)D) Y3M@(MX[ZHE-[B/>6_7":
MBA_]M=EF-)[>?ZY0MNS8*R$.G2@?DX!ZB>)ZREG/2@FEPSGSW&6%][;*J9;@
M[HM0;Q?I7N=CL2[4_;+89:X[2ZGC+P7+6-IR\Y3J.(^KZ'D*4$I)XKS^T\3D
MMDJJU@ ?P0KQ35M7986&B'D*L-8T^HM.2NM*R:,J<\*_1Q@E,.S&1%/41\"W
MM\6Z2M[+2@T$+PBPGGIA%514":GH8;1A+G."'B]K_Z$!(:JSK3GB(^#;;\O3
M!\;G7@V$PSA-,!O=3D:L10JZ4F)J&.BUK-S B\=&1*C.LR9XCX!AZN9F\["9
MI4HN3\.%&]Y=>;VQ8 #C'%B%O(),6^F(*">1Z,""7F/PKIN%[6A@!+R,.#6>
M8:/3(J)XDF#!'-><HI3P8R]M]&ISDDK4W^'H/('Z<&RKC_4(0B,&SJ4^U.6!
MJ O/F>)>*Q0'O-UGE8TK/N-5I9("74="E!+5RYW^XJT@C<)(&&D\@5 (RU+4
MZ4Y6ZXC)6<N-T*_NB ='8QUR\>YK;JF^QJV9J[]J:X%98 F*ZV0'&562,F=*
MK"W#(F?[:I1>3]],[$H3?3-T<4J2H]FU:U.WC<\$#J(#:3T!2AC$(0.&\A))
M %E.:9K:GM7U<7H %?7@D.VR/7Z:?!W0ZSKTH9:/=>*M0 T5 G/*I)>"L#CM
MP;T[C24W>$"/ZI5>5[$3IUX+VBFGN6)($Z(T0O$OK)06H*PX\E'N([6B^5=S
M(;<"<+^CUBP>'A?S=$Z4;I'O?QY)D8?V![9BSL8EK2>8QN4LC78<Z;W]I(!4
MJ['<L:Q[['4Q+^ZF:[-(=Z0VT_G]/@/N8EZE.E>#UH)7TB!K#!.*(.X!]X*6
MV-#X\\]D!BKSY)@9Z SW_D*3TM6I=;NT;-YHL)PX0ARVF$/)"-2T#+-A#&K2
M:R[97MG9!9->A#?UI):>R>N+J-_)[(5$YQEZ[,T@$/$(>&0IE=XPI+ L5P$,
M42FNC89]4.-U-K:D@IXIM\U[GTH*1LTW(=[I]X.!A)CXC]5*,BDM2_=6=[)S
MHT"OU6.OFWZM*J)ON[>[_=S$[AUY,Q@I)$0J.D2><V:$I\R4\F(O*]VVO*2]
MH0'M7CLJ&(>?V-@7C&MFSU(,)#?1I_$21H^F]&4$=-56:JT%'7=^S#L<W=K!
MO[>P]KW:VEV69+0:H+=42$J<QP!(82WTHL3)")5C&$<Y(_>Y+NE/+WWS=^_<
MUK>:U1H(WGNLE+4:>P.LBV; \(/T)BLQVBB7*;TPY0@[6U5%WT3\P<UM3L<J
MS02HW+:ZAR)":V8TDJ3<5!-"NYRT1J,TE4.2L@.%]&XC=XYPAHT\V4"@J0Z=
M0I)I;+5'$NA]V1G&)*(F)X1CA%<E![60;2IB)*YF<W<R** 0ALPK*U$4DG"(
M42FO!23GCNX(ES9#$J\=#?3%N/I,.R8?<C9%ZWELF$(< <PE*^4CSN7<V!UA
MC'2?2Y)V$._WB-_=W14WZ^F7XO#;A^)F,;^9SJ:[TJQ7=\Q/!%;$>@2,M98#
M;J57F"@O ="I(.@(COE_5,';1<)Z$[7TUZPH2Y+4P*!Z:T%BH RAR#&CK/#2
MT#CO[K&!@/U4Q_R5>7+,"G2&>^]SSH^2'#%SJCR52\N+3>3%M^_OQ_5&?:8V
M^TY@SKEHO DTG"*))>?$[+$TV+.K.X7ME&_5N-V+ILZS_D@EI5>FN/CU'R7X
M(X[_8C:;S(O%9O6^6#Y,4MC;]FZR>DBYJ%^A;WN-!VVT4Q)2#;RQ.JZN-?8E
M$M*3G"C+$68AZ(.Q@REG8./\^MY.<>HN><V6 A=&8DLU=)H[P  S@)1X4,5Z
MO63YDQC8EG0Q,#?C#R8J=GJRVL+9=X-3<?W$&6(8<ZJ@-D;Q4F:%LU*V5-\B
MD3O^S8O[=.7ZVOG7&/V!&6=W ,7%_?_;3&;3NVEQ^WZYV/^FTM0P74^;&,>*
M#0</,/!<:<J1%RHY.]CNT;+QK_UDLOJ1JY^N8GX?1#_#V\^/Q7H]*\Y5K*GT
M?H#($JHU)X(ZZ!'$#KA2=B%QSCP^PGJR(R!E%OZ=+G]>0\%]O2E6J_CX?C6W
MVB:XC/9C\?%S1/ROR:JX31>$XK,[]6>OD]KK1<"8>LX(Y98@2*VT%M(26PMP
M3H18]0*VUVAWQZ_,OHQT%1"2W[19KZ+G_C^+OU9QWGEW%UOC1X=*:VT'EJ+@
MO6  6044 5QA<L",V)SDT>+G-NY]ZZ93P[\_?8]Z_;%&]73[RFWI1>58]8J?
M")!0(@6BTF.K',5>(52B0GU6KC#Y<S)V8!5U2ESWAU-_;5;3>9Q0HM+7R]C%
M;57;'*H>;308BDR<?8CV"O*(@*6L7/5:PE!6RD[PBYV]:*5;/GXM;C;IF:?^
M2Q877VLP4*R0$TI9J#S'%G%!V%YB1_.F=3C"'%?CXF$+&NF4@_''WQ\>(P:+
MN[U%=Y/E/ Z4U_8*6F@U6$BD!0Q&VV\01E )4IZ,.(- 3M N_'5NU9-:!M[4
M,I^CLQ$%+</RX@.[M$?_F,PV.U;,9HN_)_.;!B$$-1H/6D(+)&&""\"YLT8J
M66YL(VFRX@9&&/,[@OVP[K33%Z?_G"^C1/?SZ7^VO2^W-6QQLRPFJV+UH5AM
M9JF.M8_XOU].%\OWVUJX\=GWB]5TNT%]@M5M-!^ ]0Y$BT"X=3YZ[I"B<K7I
M-! Y6V&PZ7G9=>R%#:BF@8WV-K_ND]KL]2WS\Q8"\] *2 SW1  JI$:BW UW
M7K&LHHPC+/HR O.;J8*!*?@:4NU$PP;MK8SN$\ N#L<XN4"K#T/12YI5N['^
MR5A_(?+#4;$%-?0;-K_[XYO%:J6+N^A^OU\NODQ7NZVT)X]=7_2\X=$1XU'?
M&G*"D"':[F_=0 >(J[1+VZ6L225IFGWM@L=.54_5$_^P6D]OSF+1J-4@A(<>
M*^V5%)H *W"9)@$ZK4FO%ZU[G-%R6/.JN>@#_7YGLUH2[9?W[9)TWV@0F&AN
MM1>,QOG>,,X%*5'"'.?<-QSS#LZP'&T&_H@IZKY&#*/:I_/)\MLV=GI;;'"^
MCKJ)_;O_?1YU&X=ENQRN^M4@N?5"6."]P8 1+;@ZJ!8IFW.M:<Q7'H<E>4?:
MZ=?/>SM9)OF^7&&Z8P(<CU![@:QT$!@3'7BL/(HZ<$JP2G=.NI'U$&UL(OK?
M(JW^GBQOM\GN3XAZ_*5@M!/*&8>PEQS$E0LAO)04H)_)#ZNL\^<ET]L"MZ\Y
M3._/B]7-_VVFNRTV]75Z:I_JR!O!&<2B'RF,%HI+ZAQ5>B^?-W$9>EWD:4/1
MBRZ '9(XZ8_+8E]^N2:%?G@W>("DH,9#"H$FU!'KR_'G.7$Y">%&2*9LS5=@
M4@Z^S0_CORQFN]KLR7&8WJ3M(+<\6O'\[#N!<<FUQT9@"B6S*56C+_O- .SU
MWOTPO&BHQT4W"/>^MZTVZ\^+Y73][<PL]?H+ <45)#!,8T"8D\(S;4TIG4?V
MRE;Q'4Q2K> Z'&O.3DW'7@EQ-%$MK*#8&,A0'![D("'2MM?Z/CWZQ@W5?)8U
MC5#M+6O9?FO4I"CTY;>C\]7)YX. !F,(,4! >6N !-3N9.- "7MEU>OS5?P\
M_5@+H/9%F!^NG?_/9CE=W4ZWD>!GJ7/FS4 HPM0BY"-^$E&:RF>5\CJB>\V,
M?($D:A?>ONCTZKQ]QN$Y^DY ""FOG36<"(:-=\CN?40.4\7#7C=U+]'G:0O:
M0>GS=O)P?F%^YLU@@,7Q'Z(1B"O2.#X PJ6\F+HKF]):T'L5)C7&MR\^?8@*
MB]_Z?'8R^_'!H"FFTC"D'4H66U(B5"E-'')7YC*WIMM%BZ .:G+>3.?%]CRK
MKL4YO!BL,D1@;Y2D% N5 N_H7EI$),]Q?^IG^;V:N:LIOHWW ??7?">':[Z+
M[37?0S!8G:SY>0T&(YQEP&#B!>?>22J *R76LEI6TPLW2@W4OQ@ ^SYMURMW
MT,M+%_M+1=4)VDJ[Z1Z'8L!9:3BET=C'^<*46'%B<I)WC7#AUS)/AU!!V\;Q
MTW(RW^WYQP<B(NKF9O.PV:8!>7:/K74SVN:G P4L.CX,0"RU-%AK W6)HF<P
MY^[CI2P_NS&X VJI+].\CYJ:WZ> JJ>(GG(IC[\4N+/:4J=4=):C V6B^PQ+
M*1E&.5R\%'<RWZBVAN^PVVGG4@N=>"M@02227$N)-9/;>8+MY<2(H!PG<H17
ML#J<G-L!N+=SH:RKUU5N[W)-!:/6.<Q3%<HXC 0HY6;J>1G[6L0:8:K!CHC5
M/M #7Y,^3-KOBSB%IWR<T:,MPX+CM+_<%+<GB)?1:B"00R64A9 3( #57,@2
M)^%HSHYO]?R ET[(_A0P,%$_?9ZL_[G8S&YW&3<.Z3D^G2UMT:S!X+WB5$I&
M-?&.&N&-X24Z *B<B.419N_KEY[M8M_S=81B_6(6N+Z;"9HR"T%4@B+4 :.Q
MYPQ3XX%C#C!>R5OHR5.*"GEW]W(>KE%7NFI3@2.'E&-((,JMUD(89DI4D&19
MJ;]&778AAR'G7*AV01_,84\H[7_;;X"DX[7EE^W4NYUR)[/5AV*]6<ZWOY1R
MGMIO:.\C45W:(2,=MXJ9J"B.O2U1Q KDA*>.\'"B.Y*=8W-?&AHWS[=Y35HG
M]K;58+$6W!FA<702%/'2>U#BI!B\LD#KD3.YB4H:'V<\[^++'KY)R9[>3"=_
M36?'JHHT;"E@P5SJ$+$L2DI\G.Y*&;W"HM^:K9=/NW[4,*25?+F>JCO5O])"
MP(Q8ZQ35-O[+*JLI4*7\FF=5LZE]SM"'"SJH_<M7P& $?+]</!;+];?WL\E\
M'0VV^[_-]#'E&*O#P:.-A)1C"B*#H8$(&BL,1JA$09BL"M8C/*88CH1M:6!$
M[N(/U47FM^6>T+;\B'Y>?L0L3F8LZ>)S 7+)'+.<" XD))BDE.9[9!F4.<&E
MM4]*KM[$]JRMP<9![171SK/&P'IH$=<0$,80-8[Z4CK/<<YQ\ @/289C8A.T
M!^/2;\O%JI8ON7TA:&$50])"K!G!D'DC<"D=Y%F[E_5/-#I/P30<EYJ@?3UQ
M!AX1 J"/LE.(,):<P+W<'&!/<HYUJ]<0ZCO5]7!DR]; 8,R+$-4\FPE(.T.9
M-)Q0 1#W6,N#9$B9K"Q2]4L 7;$)JP_V #1ZLBU4[[#OE1>#!,)18BAFDG$5
M/4HB02DM8%FYSVOO*E_!T5X^Q,,2ZK?%XO;OZ6RV"YO9UV+;C8WG?Z_-N1IM
MA[C YTX)H)AQ/"[VDP9*S(0B5W?BW!:%*C&S.T4,2]ZT:3Z=WZOE,EU&.5<=
MHG(; 9,(-Q7*IPLK1!LGN2PQD!3D+$;'??+6/17SX1Z6<C6V-YZ_%2)Z6 DB
MG2=,8DV)AFXO)P127%D6B5YIU03@OHET\$1.G]M6>2U(C8#!'@OGE>1>$ MU
M*:D4#%T7E;KTX5J =["5Y9,NUUQD_OAFM,#8,0DQD-HC#I47&);R0IYU$E#_
M4M>@2<M;B_;+0KC?2-]M>H1K"NI55A%%'-%8*RND)LSP;99W8C&,GL9P0;T?
M;SX7MYM9\>YNU_]GF>S+A&W14=_?/]WJYE/4AHX=^O<)/#);#L@KX!2*OK_7
MRCEA(:,E9DQGI?4<8=QD*^QYGBBM5PWTEI?O(%4ZD5S,D\=>2OCB#G0#MM9N
M-1"E.7)812TA[5))9,[V.!$#LGR?B]O!RN=JU_CWS]-J%8UK$[5^LX%#0AD0
M#$/#!.)6<JM*I)1'O=:"N7RF=JZ _JGZPFM,>3:_.XX-6%JKQ: 1!$@J:Y E
M0EADK2RGG+B*YCD9<D899-DM0;O$OG]N'KG2^&$QF_DG:=7JT;-NHP$K2^.Z
M2:0+D4A"8^*2J40I_I13$J5V_.7E,[1C^/M=MAXMA7UM=U0)H*G\K4,. <L0
M($QZ3#W%'CN,X(#5LYX5>3[&+_?U9K:Y3=O^V]0DJ_?%,NHHY57ZM'!?)P_3
M^?;Q_6VQ)VP\ 5C7GPX<& DHI=;&(0>5DY*0$G6AL^)[1GDBV0H#7R1>'962
M!D[M<(+-1]X(7$IJJ% RBL>@E@AZ5LJGD<UQT&J3\+%83A>W']>3Y;I3(HZ'
M--62/-14TO")<);IKMGJ0[':S%(.LFV5S<TRJ>;]5L7QZ?>+75J\!IRM^8&
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
MYN3^?EG<;]MZ=[=_8NC5U)%N5; <9]X,A MIM+)4$F$8H4ZD',Z:(^( (VI
MBW&DY^=RAYUZ+=CH&7EL/$"$& &59N0@K58ZIW33"&U :[I_GG&R/8B[S!_S
M,>IH&XW]6[&X7TX>/T]O)K,3B<../A\$P8HEAQH;X8E1 %FWEPDJ;GJM]SX8
M;6JJ=]$^L)V2I;A_WL.C>3]./A^TY,QR9XW2CA/MK6*VE$DSWVL,7+=)B%K0
MZZ)]1*NQ9%729%7<_-?]XLM_;_=YEM\24WCYET04_H0H^Y_#GQ]?8<7W_QA8
M]&P4LD!*GN+\H?3IGM&NPY2Y*ZJ(TX+2%IGP]78>_(=39R^#?G\H*&T1XM9;
MEXPDISI=!-I)@20T.>%Q(]H&:Y<$V3 VOEBG9K/]!N]]Q/KXK=_C#P?NH?!.
M8"RUIAAHC/F.MEPC@"6ZCIVH=A7>&IQ]68$CSM&;"O=VS[T:"!:"Z&CVC!=
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
M?W@LYJMM"X-MNW\OEO3N[FF'/A2SR7HW1%?;BFE_I2Z_GWS;W<2KE$DZH^&
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
M8E+8JY(:\OWYJ +&9N4@N-*2M:,[3^M>[:,?PENAWMVIK@ZSG[8?*+%<0X6
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
M3!9KZW]1S!^@Y]"7(V5;FKT@<1^Q\4SQ$%%5Z-P+\%*WTC,B>KT9HF/EGTV
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
MV';VQ\VW67'[>UG'D/Q]-/\+QNC3M-AWI<UI+TB&@NOA2'",AD \QY[0&H'
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
MW?ZB^O)IM"C^^S_^'U!+ 0(4 Q0    ( ). 35"S0S%J<00# /@H(P 5
M          "  0    !I<F)T+3$R,C@R,#$Y>#$P:RYH=&U02P$"% ,4
M" "3@$U0Y.5.KY,$  "Q/   &@              @ &D! , :7)B="TQ,C(X
M,C Q.7@Q,&ME>#(Q,2YH=&U02P$"% ,4    " "3@$U0&\PLIR0#   K"P
M&@              @ %O"0, :7)B="TQ,C(X,C Q.7@Q,&ME>#(S,2YH=&U0
M2P$"% ,4    " "3@$U0U^#NQ5\(  !L-@  &@              @ '+# ,
M:7)B="TQ,C(X,C Q.7@Q,&ME>#,Q,2YH=&U02P$"% ,4    " "3@$U0Y5N#
M@CD(  !I-0  &@              @ %B%0, :7)B="TQ,C(X,C Q.7@Q,&ME
M>#,Q,BYH=&U02P$"% ,4    " "3@$U0O&ER%M$%   '(   &@
M    @ '3'0, :7)B="TQ,C(X,C Q.7@Q,&ME>#,R,2YH=&U02P$"% ,4
M" "3@$U0DMCSQ_00  !N8P  &0              @ '<(P, :7)B="TQ,C(X
M,C Q.7@Q,&ME>#0R+FAT;5!+ 0(4 Q0    ( ). 35 </DNS'!4  *G_   1
M              "  0<U P!I<F)T+3(P,3DQ,C(X+GAS9%!+ 0(4 Q0    (
M ). 35!;B4+<5R\  &(] @ 5              "  5)* P!I<F)T+3(P,3DQ
M,C(X7V-A;"YX;6Q02P$"% ,4    " "3@$U0CLE8EX-M  #1I@4 %0
M        @ '<>0, :7)B="TR,#$Y,3(R.%]D968N>&UL4$L! A0#%     @
MDX!-4".EA%&U)0$ RQ(0 !4              ( !DN<# &ER8G0M,C Q.3$R
M,CA?;&%B+GAM;%!+ 0(4 Q0    ( ). 35#E@>T/K+X  "/9"0 5
M      "  7H-!0!I<F)T+3(P,3DQ,C(X7W!R92YX;6Q02P4&      P #  ]
) P  6<P%

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6816755408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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>Share-based Payment Arrangement [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_CompensationAndEmployeeBenefitPlansTextBlock', window );">Stock-Based Compensation</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">14.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Stock-Based Compensation</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company has awards and options outstanding under </span><span style="font-family:inherit;font-size:10pt;"><span>three</span></span><span style="font-family:inherit;font-size:10pt;"> stock incentive plans: the 2005 Stock Option and Incentive Plan (the "2005 Plan"), the 2015 Stock Option and Incentive Plan (the "2015 Plan") and the 2018 Stock Option and Incentive Plan (the "2018 Plan" and together with 2005 Plan  and the 2015 Plan, the "Plans"). The 2018 Plan is the only one of the three plans under which new awards may currently be granted.  Under the 2018 Plan, which became effective on May 23, 2018, </span><span style="font-family:inherit;font-size:10pt;"><span>1,750,000</span></span><span style="font-family:inherit;font-size:10pt;">&#160;shares were initially reserved for issuance in the form of incentive stock options, non-qualified stock options, stock appreciation rights, restricted stock awards, restricted stock units, unrestricted stock awards, cash-based awards, and dividend equivalent rights. Stock awards returned to the Plans, with the exception of those issued under the 2005 Plan, as a result of their expiration, cancellation or termination are automatically made available for issuance under the 2018 Plan. Eligibility for incentive stock options is limited to those individuals whose employment status would qualify them for the tax treatment associated with incentive stock options in accordance with the Internal Revenue Code. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, there were </span><span style="font-family:inherit;font-size:10pt;"><span>1,293,482</span></span><span style="font-family:inherit;font-size:10pt;"> shares available for future grant under the 2018 Plan. The Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$23.7 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$25.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$19.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> of stock-based compensation expense during the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, December 29, 2018, and December 30, 2017, respectively. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Stock-based compensation breaks down by expense classification as follows (in thousands):</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,486</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,407</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,082</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Research and development</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,186</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,494</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,009</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,323</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,842</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,571</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">General and administrative</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,749</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,089</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>23,744</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,804</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>19,751</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:16px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Stock Options</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Options granted under the Plans are exercisable in full at any time subsequent to vesting, generally vest over </span><span style="font-family:inherit;font-size:10pt;"><span>four years</span></span><span style="font-family:inherit;font-size:10pt;">, and expire </span><span style="font-family:inherit;font-size:10pt;"><span>five years</span></span><span style="font-family:inherit;font-size:10pt;"> or </span><span style="font-family:inherit;font-size:10pt;"><span>ten years</span></span><span style="font-family:inherit;font-size:10pt;"> from the date of grant or, if earlier, 90&#160;days from employee termination. The exercise price of stock options is typically equal to the Company's closing stock price on the date of grant.  </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the unamortized compensation costs associated with stock options was </span><span style="font-family:inherit;font-size:10pt;"><span>$0.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted-average remaining recognition period of </span><span style="font-family:inherit;font-size:10pt;"><span>0.61</span></span><span style="font-family:inherit;font-size:10pt;"> years. </span></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes stock option activity for fiscal years 2019, 2018 and 2017:</span><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="11"/></tr><tr><td style="width:41%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:13%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Exercise Price</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Remaining</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Contractual Term</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Aggregate</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Intrinsic</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Value(1)</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,088,174</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>32.27</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>10,975</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>57.33</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(367,267</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28.79</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(18,928</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36.72</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>712,954</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>34.34</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(239,830</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>33.40</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(10,863</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>46.20</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>462,261</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>34.55</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(127,024</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32.95</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(12,329</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>37.03</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>322,908</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>35.08</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2.47 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>$5.65 million</span></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested and expected to vest at December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>322,908</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>35.08</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2.47 years</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>$5.65 million</span></span></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;"><span style="font-family:inherit;font-size:10pt;">Exercisable as of December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>293,159</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>34.30</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2.35 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>$5.32 million</span></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;_________________________</span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate intrinsic value on the table above represents the difference between the Company's closing stock price on </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> of </span><span style="font-family:inherit;font-size:10pt;"><span>$50.20</span></span><span style="font-family:inherit;font-size:10pt;"> and the exercise price of the underlying in-the-money option.</span></div></td></tr></table><div style="line-height:120%;padding-left:4px;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During fiscal years 2019, 2018, and 2017, the total intrinsic value of stock options exercised was </span><span style="font-family:inherit;font-size:10pt;"><span>$8.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$14.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$21.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively.  </span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Time-based Restricted Stock Units</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Time-based restricted stock units entitle the holder to a specific number of shares of common stock upon vesting, typically over a </span><span style="font-family:inherit;font-size:10pt;"><span>four year</span></span><span style="font-family:inherit;font-size:10pt;"> period. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the unamortized compensation costs associated with restricted stock units was </span><span style="font-family:inherit;font-size:10pt;"><span>$49.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted-average remaining recognition period of </span><span style="font-family:inherit;font-size:10pt;"><span>2.53</span></span><span style="font-family:inherit;font-size:10pt;"> years. </span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the time-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:</span></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="7"/></tr><tr><td style="width:69%;"/><td style="width:14%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Shares&#160;Underlying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Restricted Stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Grant Date Fair</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>935,179</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>35.07</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>396,164</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>72.63</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(351,543</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>33.73</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(41,347</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>39.52</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>938,453</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>51.24</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>307,614</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>81.55</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(351,816</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>47.30</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(38,362</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>60.62</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>855,889</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>63.32</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>407,325</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>79.91</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(358,119</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>54.89</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(85,863</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>76.85</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>819,232</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>73.83</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-left:4px;text-align:left;padding-left:48px;text-indent:-48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate intrinsic value of outstanding time-based restricted stock units at </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$42.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> based on the Company's closing stock price on </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> of </span><span style="font-family:inherit;font-size:10pt;"><span>$50.20</span></span><span style="font-family:inherit;font-size:10pt;">, with a weighted average remaining contractual term of </span><span style="font-family:inherit;font-size:10pt;"><span>1.52</span></span><span style="font-family:inherit;font-size:10pt;"> years.</span></div><div style="line-height:120%;padding-bottom:13px;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Performance-Based Restricted Stock Units</span></div><div style="line-height:120%;padding-bottom:13px;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company grants performance-based restricted stock units ("PSUs") to certain of its employees. The PSUs have performance metrics based on financial performance of the Company measured at the end of a </span><span style="font-family:inherit;font-size:10pt;"><span>three year</span></span><span style="font-family:inherit;font-size:10pt;"> performance period. For the 2017 grant year, the performance metric for these awards is based on revenue, operating income and/or operating income percent, with a threshold requirement for a minimum amount of revenue growth. Starting in 2018, the Company has removed revenue as a performance metric in the PSU plan design and changed the payout metric from three-year cumulative operating income as a percentage of annual revenue to three-year cumulative operating income in dollars. The number of shares actually earned at the end of the three-year period will range from </span><span style="font-family:inherit;font-size:10pt;"><span>0%</span></span><span style="font-family:inherit;font-size:10pt;"> to </span><span style="font-family:inherit;font-size:10pt;"><span>200%</span></span><span style="font-family:inherit;font-size:10pt;"> of the target number of PSUs granted based on the Company&#8217;s performance against the performance conditions.</span></div><div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The unamortized fair value as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> associated with performance based restricted stock units was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.7 million</span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted-average remaining recognition period of </span><span style="font-family:inherit;font-size:10pt;"><span>1.04</span></span><span style="font-family:inherit;font-size:10pt;"> years. </span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the performance-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:</span></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.41520467836257%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:69%;"/><td style="width:14%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of<br/>Shares&#160;Underlying<br/>PSU</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average<br/>Grant Date Fair<br/>Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>163,911</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>35.03</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>105,650</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>57.33</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(24,792</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>43.35</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,708</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>39.71</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>242,061</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>43.97</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>91,538</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>68.41</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(56,259</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>34.30</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,221</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>45.71</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>274,119</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>54.10</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>70,827</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>122.20</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(78,943</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>33.33</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(49,772</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>78.29</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>216,231</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>78.42</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate intrinsic value of outstanding PSUs was </span><span style="font-family:inherit;font-size:10pt;"><span>$11.3 million</span></span><span style="font-family:inherit;font-size:10pt;"> based on the Company's closing stock price on </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> of </span><span style="font-family:inherit;font-size:10pt;"><span>$50.20</span></span><span style="font-family:inherit;font-size:10pt;"> with a weighted average remaining contractual term of </span><span style="font-family:inherit;font-size:10pt;"><span>1.04</span></span><span style="font-family:inherit;font-size:10pt;"> years.</span></div><div style="line-height:120%;text-align:left;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Employee Stock Purchase Plan</span></div><span style="font-family:inherit;font-size:10pt;">In May 2017, the Company&#8217;s stockholders approved the 2017 Employee Stock Purchase Plan ("ESPP").  Eligible employees may purchase the Company&#8217;s common stock through payroll deductions at a price equal to </span><span style="font-family:inherit;font-size:10pt;"><span>85%</span></span><span style="font-family:inherit;font-size:10pt;"> of the lower of the fair market values of the stock as of the beginning or the end of six-month offering periods beginning November 15 and May 15 of each year.  An employee&#8217;s payroll deductions under the ESPP are limited to </span><span style="font-family:inherit;font-size:10pt;"><span>15%</span></span><span style="font-family:inherit;font-size:10pt;"> of the employee&#8217;s compensation, up to </span><span style="font-family:inherit;font-size:10pt;"><span>$4,000</span></span><span style="font-family:inherit;font-size:10pt;"> each period, for the purchase of common stock not to exceed </span><span style="font-family:inherit;font-size:10pt;"><span>1,000</span></span><span style="font-family:inherit;font-size:10pt;"> shares per offering period.  As of December 28, 2019, there were </span><span style="font-family:inherit;font-size:10pt;"><span>570,962</span></span><span style="font-family:inherit;font-size:10pt;"> shares reserved for future issuance under the ESPP.  The Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$0.1 million</span></span> of stock-based compensation expense during the fiscal years ended December&#160;28, 2019, December 29, 2018, and December 30, 2017, respectively.<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_CompensationAndEmployeeBenefitPlansTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 an entity's employee compensation and benefit plans, including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, share-based compensation, life insurance, severance, health care, unemployment and other benefit plans.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 712<br> -URI http://asc.fasb.org/topic&amp;trid=2197446<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 710<br> -URI http://asc.fasb.org/topic&amp;trid=2127225<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI http://asc.fasb.org/topic&amp;trid=2235017<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CompensationAndEmployeeBenefitPlansTextBlock</td>
</tr>
<tr>
<td style="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>56
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813608272">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Industry Segment, Geographic Information and Significant Customers<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_SegmentReportingAbstract', window );"><strong>Segment Reporting [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_SegmentReportingDisclosureTextBlock', window );">Industry Segment, Geographic Information and Significant Customers</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">18.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Industry Segment, Geographic Information and Significant Customers</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company operates as&#160;one&#160;operating segment. The Company's consumer robots products are offered to consumers through distributor and retail sales channels, as well as its on-line stores.</span></div><div style="line-height:120%;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div><div style="line-height:120%;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Geographic Information</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, sales to non-U.S.&#160;customers accounted for </span><span style="font-family:inherit;font-size:10pt;"><span>50.3%</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>48.7%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>48.8%</span></span><span style="font-family:inherit;font-size:10pt;"> of total revenue, respectively. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about revenue by geographical region (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:41%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>603,618</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>560,995</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>452,563</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">International</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>610,392</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>531,589</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>431,348</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,214,010</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,092,584</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>883,911</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Significant Customers</span></div><span style="font-family:inherit;font-size:10pt;">For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, the Company generated </span><span style="font-family:inherit;font-size:10pt;"><span>21.3%</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>17.3%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>13.5%</span></span>, respectively, of total revenue from one of its retailers (Amazon), respectively.<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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-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_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -URI http://asc.fasb.org/topic&amp;trid=2134510<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>57
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836600416">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Goodwill and other intangible assets - Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Finite-Lived Intangible Assets, Net [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_FiniteLivedIntangibleAssetsGross', window );">Cost</a></td>
<td class="nump">$ 71,231<span></span>
</td>
<td class="nump">$ 71,053<span></span>
</td>
</tr>
<tr class="re">
<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">58,879<span></span>
</td>
<td class="nump">46,780<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</a></td>
<td class="nump">12,352<span></span>
</td>
<td class="nump">24,273<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_PatentedTechnologyMember', window );">Completed technology</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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Finite-Lived Intangible Assets, Net [Abstract]</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 );">Cost</a></td>
<td class="nump">28,100<span></span>
</td>
<td class="nump">26,900<span></span>
</td>
</tr>
<tr class="ro">
<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">24,605<span></span>
</td>
<td class="nump">21,607<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</a></td>
<td class="nump">3,495<span></span>
</td>
<td class="nump">5,293<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_TradeNamesMember', window );">Tradename</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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Finite-Lived Intangible Assets, Net [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_FiniteLivedIntangibleAssetsGross', window );">Cost</a></td>
<td class="nump">100<span></span>
</td>
<td class="nump">100<span></span>
</td>
</tr>
<tr class="re">
<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">100<span></span>
</td>
<td class="nump">100<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</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_CustomerRelationshipsMember', window );">Customer relationships</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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Finite-Lived Intangible Assets, Net [Abstract]</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 );">Cost</a></td>
<td class="nump">11,095<span></span>
</td>
<td class="nump">11,291<span></span>
</td>
</tr>
<tr class="ro">
<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">2,302<span></span>
</td>
<td class="nump">1,365<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</a></td>
<td class="nump">8,793<span></span>
</td>
<td class="nump">9,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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DistributionRightsMember', window );">Reacquired distribution rights</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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Finite-Lived Intangible Assets, Net [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_FiniteLivedIntangibleAssetsGross', window );">Cost</a></td>
<td class="nump">31,680<span></span>
</td>
<td class="nump">32,499<span></span>
</td>
</tr>
<tr class="re">
<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">31,680<span></span>
</td>
<td class="nump">23,598<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</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">8,901<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_NoncompeteAgreementsMember', window );">Non-competition 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_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Finite-Lived Intangible Assets, Net [Abstract]</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 );">Cost</a></td>
<td class="nump">256<span></span>
</td>
<td class="nump">263<span></span>
</td>
</tr>
<tr class="ro">
<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">192<span></span>
</td>
<td class="nump">110<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</a></td>
<td class="nump">$ 64<span></span>
</td>
<td class="nump">$ 153<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/disclosureRef<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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_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://fasb.org/us-gaap/role/ref/legacyRef<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_FiniteLivedIntangibleAssetsNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_FiniteLivedIntangibleAssetsNetAbstract</td>
</tr>
<tr>
<td style="padding-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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentedTechnologyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PatentedTechnologyMember</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_TradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TradeNamesMember</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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CustomerRelationshipsMember</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_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_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_NoncompeteAgreementsMember</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>R67.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6710637552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</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 );">Derivatives not designated as hedging instruments:</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_DerivativeNotionalAmount', window );">Derivative, Notional Amount</a></td>
<td class="nump">$ 58,400<span></span>
</td>
<td class="nump">$ 56,000<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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember', window );">Foreign currency forward contracts | Derivatives not designated as hedging instruments: | 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_DerivativeFairValueOfDerivativeNetAbstract', window );"><strong>Derivative, Fair Value, Net [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_DerivativeAssets', window );">Derivative Asset</a></td>
<td class="nump">1,855<span></span>
</td>
<td class="nump">551<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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember', window );">Foreign currency forward contracts | Derivatives not designated as hedging instruments: | 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_DerivativeFairValueOfDerivativeNetAbstract', window );"><strong>Derivative, Fair Value, Net [Abstract]</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">297<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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember', window );">Cash flow hedge | Derivatives designated as cash flow hedges:</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_DerivativeNotionalAmount', window );">Derivative, Notional Amount</a></td>
<td class="nump">424,600<span></span>
</td>
<td class="nump">366,700<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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember', window );">Cash flow hedge | Foreign currency forward contracts | Derivatives designated as cash flow hedges: | Other current assets</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_DerivativeFairValueOfDerivativeNetAbstract', window );"><strong>Derivative, Fair Value, Net [Abstract]</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_DerivativeAssets', window );">Derivative Asset</a></td>
<td class="nump">4,347<span></span>
</td>
<td class="nump">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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember', window );">Cash flow hedge | Foreign currency forward contracts | Derivatives designated as cash flow hedges: | Other 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_DerivativeFairValueOfDerivativeNetAbstract', window );"><strong>Derivative, Fair Value, Net [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_DerivativeAssets', window );">Derivative Asset</a></td>
<td class="nump">9,112<span></span>
</td>
<td class="nump">172<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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember', window );">Cash flow hedge | Foreign currency forward contracts | Derivatives designated as cash flow hedges: | 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_DerivativeFairValueOfDerivativeNetAbstract', window );"><strong>Derivative, Fair Value, Net [Abstract]</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">47<span></span>
</td>
<td class="nump">335<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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember', window );">Cash flow hedge | Foreign currency forward contracts | Derivatives designated as cash flow hedges: | Other Noncurrent Liabilities [Member]</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_DerivativeFairValueOfDerivativeNetAbstract', window );"><strong>Derivative, Fair Value, Net [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_DerivativeLiabilities', window );">Derivative Liability</a></td>
<td class="nump">$ 414<span></span>
</td>
<td class="nump">$ 795<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Derivatives not designated as hedging instruments:</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_DerivativeTermOfContract', window );">Derivative, Term of Contract</a></td>
<td class="text">10 months<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Cash flow hedge | Derivatives designated as cash flow hedges:</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_DerivativeTermOfContract', window );">Derivative, Term of Contract</a></td>
<td class="text">37 months<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=99393222&amp;loc=SL20226008-175313<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13433-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_DerivativeFairValueOfDerivativeNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DerivativeFairValueOfDerivativeNetAbstract</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13433-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=99393222&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_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_DerivativeNotionalAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 payment on derivative.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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=109980867&amp;loc=SL5580258-113959<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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=109980867&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_DerivativeNotionalAmount</td>
</tr>
<tr>
<td style="padding-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_DerivativeTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the derivative contract is 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>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_DerivativeTermOfContract</td>
</tr>
<tr>
<td style="padding-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_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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember</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_OtherCurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OtherCurrentAssetsMember</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_AccruedLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccruedLiabilitiesMember</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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=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_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_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OtherNoncurrentAssetsMember</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_OtherNoncurrentLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OtherNoncurrentLiabilitiesMember</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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MaximumMember</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>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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6814625728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Quarterly Information (Unaudited) (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information 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_ScheduleOfQuarterlyFinancialInformationTableTextBlock', window );">Details of Quarterly Information (Unaudited)</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following information has been derived from unaudited consolidated financial statements that, in the opinion of management, include all recurring adjustments necessary for a fair statement of such information (in thousands, except per share amounts):</span></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="32"/></tr><tr><td style="width:11%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="31" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Quarter Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">September&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">June&#160;29, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">March&#160;30, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">September&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">June&#160;30, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">March&#160;31, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>426,778</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>289,399</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>260,172</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>237,661</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>384,665</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>264,534</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>226,317</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>217,068</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross profit</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>169,370</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>136,841</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>118,170</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>119,546</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>186,511</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>135,206</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>117,926</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>115,785</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,041</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>35,532</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,207</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>22,520</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,191</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,929</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,471</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,401</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted earnings per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.70</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.24</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.25</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.78</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.88</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.12</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.37</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.71</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfQuarterlyFinancialInformationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118952077&amp;loc=d3e1280-108306<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock</td>
</tr>
<tr>
<td style="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>60
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6818184464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_irbt_SharebasedcompensationexpensebyclassificationLineItems', window );"><strong>Share based compensation expense by classification [Line Items]</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_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock', window );">Share based compensation expense by classification [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Stock-based compensation breaks down by expense classification as follows (in thousands):</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Cost of revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,486</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,407</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,082</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Research and development</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,186</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,494</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,009</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Selling and marketing</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,323</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,842</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,571</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">General and administrative</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,749</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,061</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,089</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>23,744</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,804</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>19,751</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Summary of stock option plan activity</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes stock option activity for fiscal years 2019, 2018 and 2017:</span><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="11"/></tr><tr><td style="width:41%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:13%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Shares</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Exercise Price</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Remaining</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Contractual Term</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Aggregate</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Intrinsic</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Value(1)</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,088,174</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>32.27</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>10,975</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>57.33</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(367,267</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28.79</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(18,928</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36.72</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>712,954</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>34.34</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(239,830</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>33.40</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(10,863</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>46.20</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>462,261</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>34.55</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Exercised</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(127,024</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32.95</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Canceled</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(12,329</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>37.03</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>322,908</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>35.08</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2.47 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>$5.65 million</span></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested and expected to vest at December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>322,908</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>35.08</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2.47 years</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>$5.65 million</span></span></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;"><span style="font-family:inherit;font-size:10pt;">Exercisable as of December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>293,159</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>34.30</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2.35 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>$5.32 million</span></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;_________________________</span></div><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The aggregate intrinsic value on the table above represents the difference between the Company's closing stock price on </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> of </span><span style="font-family:inherit;font-size:10pt;"><span>$50.20</span></span><span style="font-family:inherit;font-size:10pt;"> and the exercise price of the underlying in-the-money option.</span></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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock', window );">Activities relating to time based restricted stock units</a></td>
<td class="text"><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the time-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:</span></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="7"/></tr><tr><td style="width:69%;"/><td style="width:14%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Shares&#160;Underlying</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Restricted Stock</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Grant Date Fair</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>935,179</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>35.07</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>396,164</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>72.63</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(351,543</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>33.73</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(41,347</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>39.52</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>938,453</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>51.24</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>307,614</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>81.55</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(351,816</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>47.30</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(38,362</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>60.62</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>855,889</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>63.32</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>407,325</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>79.91</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(358,119</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>54.89</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(85,863</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>76.85</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>819,232</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>73.83</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock', window );">Activities relating to performance based restricted stock units</a></td>
<td class="text"><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the performance-based restricted stock unit activity for fiscal years 2019, 2018 and 2017:</span></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.41520467836257%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:69%;"/><td style="width:14%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Number of<br/>Shares&#160;Underlying<br/>PSU</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Weighted&#160;Average<br/>Grant Date Fair<br/>Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December 31, 2016</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>163,911</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>35.03</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>105,650</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>57.33</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(24,792</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>43.35</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,708</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>39.71</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>242,061</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>43.97</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>91,538</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>68.41</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(56,259</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>34.30</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,221</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>45.71</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>274,119</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>54.10</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Granted</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>70,827</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>122.20</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Vested</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(78,943</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>33.33</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Forfeited</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(49,772</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>78.29</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Outstanding at December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>216,231</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>78.42</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock', window );">Schedule of Share-based Payment Award, Employee Stock Purchase Plan, Valuation Assumptions [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:13px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Employee Stock Purchase Plan</span></div><span style="font-family:inherit;font-size:10pt;">In May 2017, the Company&#8217;s stockholders approved the 2017 Employee Stock Purchase Plan ("ESPP").  Eligible employees may purchase the Company&#8217;s common stock through payroll deductions at a price equal to </span><span style="font-family:inherit;font-size:10pt;"><span>85%</span></span><span style="font-family:inherit;font-size:10pt;"> of the lower of the fair market values of the stock as of the beginning or the end of six-month offering periods beginning November 15 and May 15 of each year.  An employee&#8217;s payroll deductions under the ESPP are limited to </span><span style="font-family:inherit;font-size:10pt;"><span>15%</span></span><span style="font-family:inherit;font-size:10pt;"> of the employee&#8217;s compensation, up to </span><span style="font-family:inherit;font-size:10pt;"><span>$4,000</span></span><span style="font-family:inherit;font-size:10pt;"> each period, for the purchase of common stock not to exceed </span><span style="font-family:inherit;font-size:10pt;"><span>1,000</span></span><span style="font-family:inherit;font-size:10pt;"> shares per offering period.  As of December 28, 2019, there were </span><span style="font-family:inherit;font-size:10pt;"><span>570,962</span></span><span style="font-family:inherit;font-size:10pt;"> shares reserved for future issuance under the ESPP.  The Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;"><span>$0.1 million</span></span> of stock-based compensation expense during the fiscal years ended December&#160;28, 2019, December 29, 2018, and December 30, 2017, respectively.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_SharebasedcompensationexpensebyclassificationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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] for Share based compensation expense by classification [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;">irbt_SharebasedcompensationexpensebyclassificationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_SharebasedcompensationexpensebyclassificationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>[Table Text Block] for Share based compensation expense by classification [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;">irbt_SharebasedcompensationexpensebyclassificationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock</td>
</tr>
<tr>
<td style="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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 employee stock purchase plans, including, but not limited to: (a) expected term, (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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 number and weighted-average grant date fair value for nonvested performance shares.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock</td>
</tr>
<tr>
<td style="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>61
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6820184880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies Other assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_SecurityOwnedNotReadilyMarketableLineItems', window );"><strong>Security Owned Not Readily Marketable [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_GainLossOnSaleOfEquityInvestments', window );">Gain (Loss) on Sale of Equity Investments</a></td>
<td class="nump">$ 8,439<span></span>
</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_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount', window );">Equity Securities without Readily Determinable Fair Value, Amount</a></td>
<td class="nump">$ 21,000<span></span>
</td>
<td class="nump">$ 15,100<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_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 equity security without readily determinable 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 321<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116654751&amp;loc=SL75117539-209714<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount</td>
</tr>
<tr>
<td style="padding-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_GainLossOnSaleOfEquityInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 carrying value and the sale price of equity securities, not separately or otherwise categorized as trading or available-for-sale. This element includes investments in which the entity holds a small ownership stake (generally, less than 20% of the shares outstanding) and cannot exert significant influence.</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_GainLossOnSaleOfEquityInvestments</td>
</tr>
<tr>
<td style="padding-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_SecurityOwnedNotReadilyMarketableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_SecurityOwnedNotReadilyMarketableLineItems</td>
</tr>
<tr>
<td style="padding-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>62
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6719894288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition Contract Balances (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_RevenueRecognitionAndDeferredRevenueAbstract', window );"><strong>Revenue Recognition and Deferred Revenue [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_AccountsAndOtherReceivablesNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">$ 146,161<span></span>
</td>
<td class="nump">$ 162,166<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Contract with Customer, Liability, Revenue Recognized</a></td>
<td class="nump">5,800<span></span>
</td>
<td class="nump">6,700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract with Customer, Liability</a></td>
<td class="nump">$ 6,991<span></span>
</td>
<td class="nump">$ 5,756<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_AccountsAndOtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 allowance, receivable from customers, clients, or other third-parties, and receivables classified as other 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_AccountsAndOtherReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-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_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 transfer good or service to customer for which consideration has been received or is 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118944033&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-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_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118956577&amp;loc=SL49130549-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_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-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_RevenueRecognitionAndDeferredRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueRecognitionAndDeferredRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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>63
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6837382720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations - Robopolis Acquisition (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 02, 2017</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 30, 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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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_Goodwill', window );">Goodwill</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 118,896<span></span>
</td>
<td class="nump">$ 118,732<span></span>
</td>
<td class="nump">$ 121,440<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GoodwillPurchaseAccountingAdjustments', window );">Goodwill, Purchase Accounting Adjustments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 830<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_BusinessAcquisitionAxis=irbt_RobopolisMember', window );">Robopolis</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_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [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_PaymentsToAcquireBusinessesGross', window );">Payments to acquire business net of cash acquired</a></td>
<td class="nump">$ 169,400<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_CashAcquiredFromAcquisition', window );">Cash acquired from acquisition</a></td>
<td class="nump">38,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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents', window );">Cash</a></td>
<td class="nump">37,981<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables', window );">Accounts receivable, net (1)</a></td>
<td class="nump">21,426<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory', window );">Inventory</a></td>
<td class="nump">36,304<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_Goodwill', window );">Goodwill</a></td>
<td class="nump">80,419<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles', window );">Intangible assets</a></td>
<td class="nump">36,597<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="nump">2,456<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="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill', window );">Total assets</a></td>
<td class="nump">215,183<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(29,391)<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses', window );">Accrued expenses</a></td>
<td class="num">(3,376)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities', window );">Deferred tax liabilities</a></td>
<td class="num">(10,864)<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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther', window );">Other liabilities</a></td>
<td class="num">(2,138)<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="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities', window );">Total liabilities assumed</a></td>
<td class="nump">45,769<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="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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet', window );">Net assets acquired</a></td>
<td class="nump">169,414<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="nump">$ 36,597<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="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 );">Reacquired distribution rights | Robopolis</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">2 years 3 months<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="nump">$ 29,296<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="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_CustomerRelationshipsMember', window );">Customer relationships | Robopolis</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">14 years<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="nump">$ 7,029<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="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_NoncompeteAgreementsMember', window );">Non-competition agreements | Robopolis</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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract', window );"><strong>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [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="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Intangible assets, useful life</a></td>
<td class="text">3 years<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_FinitelivedIntangibleAssetsAcquired1', window );">Intangible assets acquired, fair value</a></td>
<td class="nump">$ 272<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_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Including Goodwill</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;">irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accrued Expenses</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;">irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, acquired at the acquisition date. 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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax liability attributable to taxable temporary differences assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116821951&amp;loc=d3e31917-109318<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 identifiable intangible assets recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 inventory recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -URI http://asc.fasb.org/extlink&amp;oid=116868840&amp;loc=d3e2207-128464<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-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_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet</td>
</tr>
<tr>
<td style="padding-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_CashAcquiredFromAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 acquisition of business during the period (for example, cash that was held by the acquired business).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118932676&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_CashAcquiredFromAcquisition</td>
</tr>
<tr>
<td style="padding-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_FinitelivedIntangibleAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<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_FinitelivedIntangibleAssetsAcquired1</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=99380562&amp;loc=d3e13770-109266<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_GoodwillPurchaseAccountingAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 adjustments after acquisition date under purchase accounting of an asset representing the 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 25<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=116868678&amp;loc=d3e961-128460<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillPurchaseAccountingAdjustments</td>
</tr>
<tr>
<td style="padding-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_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=35744584&amp;loc=d3e6927-128479<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-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_BusinessAcquisitionAxis=irbt_RobopolisMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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=irbt_RobopolisMember</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_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_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CustomerRelationshipsMember</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_NoncompeteAgreementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_NoncompeteAgreementsMember</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>R78.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6727295456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies (Details 1) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_MovementInStandardProductWarrantyAccrualRollForward', window );"><strong>Activity related to the warranty accrual</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_StandardProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">$ 11,964<span></span>
</td>
<td class="nump">$ 11,264<span></span>
</td>
<td class="nump">$ 8,464<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition', window );">Liability assumed</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,186<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualWarrantiesIssued', window );">Provision</a></td>
<td class="nump">14,091<span></span>
</td>
<td class="nump">10,798<span></span>
</td>
<td class="nump">8,591<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPayments', window );">Warranty usage</a></td>
<td class="num">(12,199)<span></span>
</td>
<td class="num">(10,098)<span></span>
</td>
<td class="num">(7,977)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Balance at end of period</a></td>
<td class="nump">$ 13,856<span></span>
</td>
<td class="nump">$ 11,964<span></span>
</td>
<td class="nump">$ 11,264<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_StandardProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1),(c)(5)<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_StandardProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-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_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 product warranty accrual from a business acquisition. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition</td>
</tr>
<tr>
<td style="padding-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_StandardProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_StandardProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-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_StandardProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 product warranty accrual from warranties issued. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_StandardProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-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>65
<FILENAME>R88.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6837646880">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Maturity of Operating Lease Liability (Details) (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 28, 2019 </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_LeasesAbstract', window );"><strong>Leases [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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months</a></td>
<td class="nump">$ 8,936<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease, due in next fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-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>66
<FILENAME>R84.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813908032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Unrecognized Tax Benefits (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward', window );"><strong>Company's adjustments to its uncertain tax position</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_UnrecognizedTaxBenefits', window );">Balance at beginning of period</a></td>
<td class="nump">$ 7,119<span></span>
</td>
<td class="nump">$ 4,590<span></span>
</td>
<td class="nump">$ 5,146<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions', window );">Increase for tax positions related to the current year</a></td>
<td class="nump">770<span></span>
</td>
<td class="nump">2,891<span></span>
</td>
<td class="nump">580<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition', window );">Increase for tax positions related to acquisition</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,493<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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions', window );">Increase (decrease) for tax positions related to prior years</a></td>
<td class="num">(768)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(523)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions', window );">Increase for tax positions related to prior years</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">407<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_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities', window );">Decrease for settlements with applicable taxing authorities</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(2,262)<span></span>
</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_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations', window );">Decrease for lapses of statute of limitations</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(613)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefits', window );">Balance at end of period</a></td>
<td class="nump">$ 7,121<span></span>
</td>
<td class="nump">$ 7,119<span></span>
</td>
<td class="nump">$ 4,590<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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10B<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=SL37586934-109318<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)<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_UnrecognizedTaxBenefits</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<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_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits resulting from settlements with taxing authorities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(3)<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_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits resulting from acquisitions.</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_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(2)<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_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits resulting from tax positions taken in prior period tax returns.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(1)<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_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions</td>
</tr>
<tr>
<td style="padding-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_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits resulting from lapses of applicable statutes of limitations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (a)(4)<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_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations</td>
</tr>
<tr>
<td style="padding-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>67
<FILENAME>R74.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813854992">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation - RSUs and PSUs (Details) - USD ($)<br> $ / shares in Units, $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharePrice', window );">Share price (in dollars per share)</a></td>
<td class="nump">$ 50.20<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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</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_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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Compensation cost not yet recognized</a></td>
<td class="nump">$ 49.2<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average remaining recognition period</a></td>
<td class="text">2 years 6 months 10 days<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward', window );"><strong>Activities relating to restricted stock awards</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Number of Shares Underlying Restricted Stock, Beginning Balance</a></td>
<td class="nump">855,889<span></span>
</td>
<td class="nump">938,453<span></span>
</td>
<td class="nump">935,179<span></span>
</td>
</tr>
<tr class="re">
<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 );">Number of Shares Underlying Restricted Stock, Granted</a></td>
<td class="nump">407,325<span></span>
</td>
<td class="nump">307,614<span></span>
</td>
<td class="nump">396,164<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Number of Shares Underlying Restricted Stock, Vested</a></td>
<td class="num">(358,119)<span></span>
</td>
<td class="num">(351,816)<span></span>
</td>
<td class="num">(351,543)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Number of Shares Underlying Restricted Stock, Forfeited</a></td>
<td class="num">(85,863)<span></span>
</td>
<td class="num">(38,362)<span></span>
</td>
<td class="num">(41,347)<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Number of Shares Underlying Restricted Stock, Ending Balance</a></td>
<td class="nump">819,232<span></span>
</td>
<td class="nump">855,889<span></span>
</td>
<td class="nump">938,453<span></span>
</td>
</tr>
<tr class="re">
<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>Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [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>
</tr>
<tr class="ro">
<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 );">Weighted Average Grant Date Fair Value, Beginning Balance (in dollars per share)</a></td>
<td class="nump">$ 63.32<span></span>
</td>
<td class="nump">$ 51.24<span></span>
</td>
<td class="nump">$ 35.07<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Grant Date Fair Value, Granted (in dollars per share)</a></td>
<td class="nump">79.91<span></span>
</td>
<td class="nump">81.55<span></span>
</td>
<td class="nump">72.63<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted Average Grant Date Fair Value, Vested (in dollars per share)</a></td>
<td class="nump">54.89<span></span>
</td>
<td class="nump">47.30<span></span>
</td>
<td class="nump">33.73<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Grant Date Fair Value, Forfeited (in dollars per share)</a></td>
<td class="nump">76.85<span></span>
</td>
<td class="nump">60.62<span></span>
</td>
<td class="nump">39.52<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted Average Grant Date Fair Value, Ending Balance (in dollars per share)</a></td>
<td class="nump">$ 73.83<span></span>
</td>
<td class="nump">$ 63.32<span></span>
</td>
<td class="nump">$ 51.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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding', window );">Outstanding, aggregate intrinsic value</a></td>
<td class="nump">$ 42.8<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms', window );">Outstanding, weighted average remaining contractual term</a></td>
<td class="text">1 year 6 months 7 days<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward', window );">Share-based Compensation Arrangement by Share-based Payment Award, Terms of Award</a></td>
<td class="text">four year<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_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance Based Restricted Stock Units</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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Compensation cost not yet recognized</a></td>
<td class="nump">$ 1.7<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Weighted average remaining recognition period</a></td>
<td class="text">1 year 14 days<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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward', window );"><strong>Activities relating to restricted stock awards</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Number of Shares Underlying Restricted Stock, Beginning Balance</a></td>
<td class="nump">274,119<span></span>
</td>
<td class="nump">242,061<span></span>
</td>
<td class="nump">163,911<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Number of Shares Underlying Restricted Stock, Granted</a></td>
<td class="nump">70,827<span></span>
</td>
<td class="nump">91,538<span></span>
</td>
<td class="nump">105,650<span></span>
</td>
</tr>
<tr class="re">
<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 );">Number of Shares Underlying Restricted Stock, Vested</a></td>
<td class="num">(78,943)<span></span>
</td>
<td class="num">(56,259)<span></span>
</td>
<td class="num">(24,792)<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Number of Shares Underlying Restricted Stock, Forfeited</a></td>
<td class="num">(49,772)<span></span>
</td>
<td class="num">(3,221)<span></span>
</td>
<td class="num">(2,708)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Number of Shares Underlying Restricted Stock, Ending Balance</a></td>
<td class="nump">216,231<span></span>
</td>
<td class="nump">274,119<span></span>
</td>
<td class="nump">242,061<span></span>
</td>
</tr>
<tr class="ro">
<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>Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [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>
</tr>
<tr class="re">
<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 );">Weighted Average Grant Date Fair Value, Beginning Balance (in dollars per share)</a></td>
<td class="nump">$ 54.10<span></span>
</td>
<td class="nump">$ 43.97<span></span>
</td>
<td class="nump">$ 35.03<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted Average Grant Date Fair Value, Granted (in dollars per share)</a></td>
<td class="nump">122.20<span></span>
</td>
<td class="nump">68.41<span></span>
</td>
<td class="nump">57.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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Weighted Average Grant Date Fair Value, Vested (in dollars per share)</a></td>
<td class="nump">33.33<span></span>
</td>
<td class="nump">34.30<span></span>
</td>
<td class="nump">43.35<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Weighted Average Grant Date Fair Value, Forfeited (in dollars per share)</a></td>
<td class="nump">78.29<span></span>
</td>
<td class="nump">45.71<span></span>
</td>
<td class="nump">39.71<span></span>
</td>
</tr>
<tr class="re">
<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 );">Weighted Average Grant Date Fair Value, Ending Balance (in dollars per share)</a></td>
<td class="nump">$ 78.42<span></span>
</td>
<td class="nump">$ 54.10<span></span>
</td>
<td class="nump">$ 43.97<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding', window );">Outstanding, aggregate intrinsic value</a></td>
<td class="nump">$ 11.3<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms', window );">Outstanding, weighted average remaining contractual term</a></td>
<td class="text">1 year 14 days<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward', window );">Share-based Compensation Arrangement by Share-based Payment Award, Terms of Award</a></td>
<td class="text">three year<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_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance Based Restricted Stock Units | Minimum</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_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>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Award vesting rights percentage</a></td>
<td class="nump">0.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_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance Based Restricted Stock Units | Maximum</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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage', window );">Award vesting rights percentage</a></td>
<td class="nump">200.00%<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_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents 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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</td>
</tr>
<tr>
<td style="padding-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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_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>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 equity-based awards excluding options, 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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Description of terms of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward</td>
</tr>
<tr>
<td style="padding-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_SharePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Price of a single share of a number of saleable stocks of a company.</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_SharePrice</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 vesting of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage</td>
</tr>
<tr>
<td style="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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 outstanding award under share-based payment arrangement. Excludes share 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_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward</td>
</tr>
<tr>
<td style="padding-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_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RestrictedStockUnitsRSUMember</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_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PerformanceSharesMember</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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MinimumMember</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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MaximumMember</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>R70.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6819136448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stockholders' Equity (Details)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 29, 2018 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 28, 2019 </div>
<div>vote </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Feb. 27, 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_EquityAbstract', window );"><strong>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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,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_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<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_PreferredStockSharesIssued', window );">Preferred stock, shares issued</a></td>
<td class="nump">0<span></span>
</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_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<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_irbt_CommonStockNumberOfVotesPerShare', window );">Common stock, votes per share | vote</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1<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 );">Stock repurchase program, authorized amount | $</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50,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_StockRepurchasedAndRetiredDuringPeriodShares', window );">Stock repurchases (in shares)</a></td>
<td class="nump">798,794<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_StockRepurchasedAndRetiredDuringPeriodValue', window );">Stock repurchases | $</a></td>
<td class="nump">$ 50,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_irbt_CommonStockNumberOfVotesPerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Common Stock, Number Of Votes Per Share</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;">irbt_CommonStockNumberOfVotesPerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_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_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="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_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) 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://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-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_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-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_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-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_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_StockRepurchasedAndRetiredDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and retired 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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&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_StockRepurchasedAndRetiredDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-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_StockRepurchasedAndRetiredDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional 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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&amp;loc=d3e21463-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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_StockRepurchasedAndRetiredDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-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>69
<FILENAME>R80.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822311328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Income (Loss) Before Provision For Income Taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic', window );">Domestic</a></td>
<td class="nump">$ 84,225<span></span>
</td>
<td class="nump">$ 113,078<span></span>
</td>
<td class="nump">$ 71,382<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign', window );">Foreign</a></td>
<td class="nump">14,608<span></span>
</td>
<td class="num">(4,456)<span></span>
</td>
<td class="nump">4,984<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">$ 98,833<span></span>
</td>
<td class="nump">$ 108,622<span></span>
</td>
<td class="nump">$ 76,366<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 earnings or loss from continuing operations before income taxes that is attributable to domestic operations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic</td>
</tr>
<tr>
<td style="padding-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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's 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://fasb.org/us-gaap/role/ref/legacyRef<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign</td>
</tr>
<tr>
<td style="padding-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_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>70
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822970384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Notes)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_LeasesAbstract', window );"><strong>Leases [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_LesseeOperatingLeasesTextBlock', window );">Lessee, Operating Leases [Text Block]</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">4.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Leases</span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company's leasing arrangements primarily consist of operating leases for its facilities which include corporate, sales and marketing and research and development offices. For leases with terms greater than 12 months, the Company records the related right-of-use asset and lease obligation at the present value of lease payments over the term. The Company's leases typically include rental escalation clauses, renewal options and/or termination options that are factored into the determination of lease payments when appropriate. The Company does not separate lease and nonlease components of contracts and excludes all variable lease payments from the measurement of right-of-use assets and lease liabilities. The Company's variable lease payments generally include usage based nonlease components. The Company's lease agreements do not contain any residual </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">value guarantees or restrictive covenants. Leases with an initial term of 12 months or less are not recorded on the balance sheet. Lease expense is recognized on a straight-line basis over the lease term.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company's existing leases do not provide a readily determinable implicit rate. Therefore, the Company estimates its incremental borrowing rate to discount the lease payments based on information available at December 30, 2018 (date of initial application) or the lease commencement date for new leases post adoption. At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company's weighted average discount rate was&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>3.61%</span></span><span style="font-family:inherit;font-size:10pt;">, while the weighted average remaining lease term was </span><span style="font-family:inherit;font-size:10pt;"><span>9.21 years</span></span><span style="font-family:inherit;font-size:10pt;">. </span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of lease expense were as follows (in thousands):</span></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="4"/></tr><tr><td style="width:79%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>8,777</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Variable lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,096</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total lease cost</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,873</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Rental expense under operating leases for fiscal years </span><span style="font-family:inherit;font-size:10pt;">2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">2017</span><span style="font-family:inherit;font-size:10pt;"> amounted to </span><span style="font-family:inherit;font-size:10pt;"><span>$12.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$8.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Supplemental cash flow information related to leases was as follows (in thousands):</span></div><div style="line-height:120%;text-align:center;padding-left: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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:79%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">Cash paid for amounts included in the measurement of lease liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating cash flows from operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>9,540</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Right-of-use assets obtained in exchange for lease obligations:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Operating leases</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>53,227</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Maturities of operating lease liabilities were as follows as of&#160;December&#160;28, 2019&#160;(in thousands):</span></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="4"/></tr><tr><td style="width:79%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">2020</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>8,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2021</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,263</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2022</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,592</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2023</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,145</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2024</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,308</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Thereafter</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>34,957</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total minimum lease payments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>73,201</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: imputed interest</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,430</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Present value of future minimum lease payments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>61,771</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: current portion of operating lease liabilities (Note 9)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,843</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Long-term lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>54,928</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:11pt;"><span style="font-family:inherit;font-size:11pt;font-style:italic;font-weight:bold;">Financial Statement Impact of Adopting ASC 842</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:48px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company adopted ASC 842 effective December 30, 2018 using the alternative transition method. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company elected the package of practical expedients permitted under the transition guidance, which allowed the Company to carryforward its historical assessments of (1) whether contracts are or contain leases, (2) lease classification and (3) initial direct costs. In addition, the Company elected the practical expedient to use hindsight in determining lease term. The adoption of the new standard resulted in the recognition of right-of-use assets and lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The standard did not materially impact the Company's consolidated income or cash flows.</span></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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888251<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="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>71
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813664192">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and other intangible assets<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and other intangible assets</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">8.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Goodwill and other intangible assets</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the activity in the carrying amount of goodwill for fiscal years 2019 and 2018 (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:78%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>121,440</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Purchase accounting adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>830</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Effect of foreign currency translation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,374</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>118,896</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,050</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Effect of foreign currency translation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,214</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>118,732</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets consisted of the following (in thousands):</span></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="24"/></tr><tr><td style="width:39%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Accumulated</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Net</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Accumulated</span></div><div style="text-align:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Amortization</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Net</span></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;"><span style="font-family:inherit;font-size:10pt;">Completed technology</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>28,100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>24,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3,495</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>26,900</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>21,607</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>5,293</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tradename</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,095</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,302</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,793</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,291</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,365</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,926</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,680</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,680</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,499</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>23,598</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,901</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Non-competition agreements</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>256</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>192</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>64</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>263</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>110</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>153</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,231</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>58,879</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,352</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,053</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>46,780</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>24,273</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Amortization expense related to acquired intangible assets was </span><span style="font-family:inherit;font-size:10pt;"><span>$12.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$19.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$13.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> for the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, respectively.  </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The estimated future amortization expense related to current intangible assets in each of the five succeeding fiscal years is expected to be as follows (in thousands):</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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.61013645224172%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:53%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:13%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Operating Expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">2020</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,140</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,000</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,140</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2021</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,140</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,921</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2022</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>915</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,696</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2023</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>240</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,021</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">2024</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>60</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>781</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>841</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Thereafter</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,733</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,733</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,495</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,857</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,352</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>72
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6820322592">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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="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.41520467836257%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">12.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Fair Value Measurements</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value Measurements as of</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 2 (1)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level&#160;3 (2)</span></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;"><span style="font-family:inherit;font-size:10pt;">Assets:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds, $17,016 at cost (3)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>15,314</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,346</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>758</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>758</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s financial assets and liabilities measured at fair value on a recurring basis were as follows (in thousands):</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value Measurements as of</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 1</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level 2 (1)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Level&#160;3 (2)</span></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;"><span style="font-family:inherit;font-size:10pt;">Assets:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Money market funds</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3,730</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds, $30,035 at cost</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>29,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>776</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total assets measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,730</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>30,381</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:3px double #000000;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Liabilities:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Derivative instruments (Note 11) </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,130</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total liabilities measured at fair value</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,130</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 2 fair value estimates are based on observable inputs other than quoted prices in active markets for identical assets and liabilities, quoted prices for identical or similar assets or liabilities in inactive markets, or other inputs that </span></div></td></tr></table><div style="line-height:120%;padding-left:48px;padding-top:6px;"><span style="font-family:inherit;font-size:10pt;">are observable or can be corroborated by observable market data for substantially the full term of the assets or liabilities.</span></div><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(2)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 3 fair value estimates are based on inputs that are generally unobservable and typically reflect management&#8217;s estimates of assumptions that market participants would use in pricing the asset or liability. The fair values are therefore determined using model-based techniques, including option pricing and discounted cash flow models.&#160;Unobservable inputs used in the models are significant to the fair values of the assets and liabilities.</span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="padding-top:6px;font-family:Times New Roman; font-size:10pt;"><tr><td style="width:48px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:24px;"><span style="font-family:inherit;font-size:10pt;">(3)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of&#160;December&#160;28, 2019, the Company&#8217;s investments had maturity dates ranging from February 2020 to March 2021.</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides a summary of changes in fair value of our Level 3 investment for the twelve months ended December 28, 2019 (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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"/></tr><tr><td style="width:81%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Conversion of convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,000</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance as of December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&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_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>73
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822976864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_AccruedLiabilitiesCurrentAbstract', window );"><strong>Accrued Liabilities, Current [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_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Components of accrued expenses</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses consist of the following (in thousands):</span></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="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued warranty</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13,856</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,964</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued other compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,331</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,518</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued bonus</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,541</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>21,226</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued sales and other indirect taxes payable</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>12,440</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,397</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued direct fulfillment costs</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,582</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,372</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Current portion of operating lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,843</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued federal and state income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,378</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,936</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,797</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,846</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>81,768</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,259</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_AccruedLiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccruedLiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 components of accrued liabilities.</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_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="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>74
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836253696">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - USD ($)<br> $ in Billions</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Jan. 31, 2020</div></th>
<th class="th"><div>Dec. 29, 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_irbt_DocumentAndEntityInformationAbstract', window );"><strong>Document and Entity Information [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, $0.01 par value<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_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">IRBT<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_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<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_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">MA<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_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<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_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<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_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<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_CommonStockSharesOutstanding', window );">Common Stock, Shares, Outstanding</a></td>
<td class="nump">28,352,390<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27,788,272<span></span>
</td>
</tr>
<tr 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">iROBOT CORPORATION<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_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001159167<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_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<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_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-36414<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_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 28,  2019<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_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<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_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2019<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_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<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_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-28<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_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-known Seasoned Issuer</a></td>
<td class="text">Yes<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_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<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_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<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_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">false<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_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<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_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<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_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="nump">$ 2.5<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_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28,352,390<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_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">77-0259335<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_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">8 Crosby Drive<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_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Bedford<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_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">01730<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_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">781<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_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">430-3000<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_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<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_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<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_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an annual report.</p></div>
<a href="javascript:void(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 Forms 10-K, 20-F, 40-F<br> -Number 240<br> -Section 15<br> -Subsection d-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_DocumentAnnualReport</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_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>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</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_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(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 Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-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_DocumentTransitionReport</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_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. 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_EntityCurrentReportingStatus</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:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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: Large Accelerated Filer, Accelerated Filer, Non-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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_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_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(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 S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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_EntityInteractiveDataCurrent</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:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance 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_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</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_EntityPublicFloat</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: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_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</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_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</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_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation 12B<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityVoluntaryFilers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.</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_EntityVoluntaryFilers</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:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance 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_EntityWellKnownSeasonedIssuer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.</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_EntityWellKnownSeasonedIssuer</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:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_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>-- None. No documentation exists for this element. --</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;">irbt_DocumentAndEntityInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=109259400&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6814157456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statement of Comprehensive Income - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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>
</tr>
<tr class="ro">
<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">$ 85,300<span></span>
</td>
<td class="nump">$ 87,992<span></span>
</td>
<td class="nump">$ 50,964<span></span>
</td>
</tr>
<tr class="re">
<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>Other comprehensive income (loss):</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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Net foreign currency translation adjustments</a></td>
<td class="num">(3,435)<span></span>
</td>
<td class="num">(5,896)<span></span>
</td>
<td class="nump">1,994<span></span>
</td>
</tr>
<tr class="re">
<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 gains (losses) on cash flow hedges, net of tax</a></td>
<td class="nump">12,363<span></span>
</td>
<td class="num">(327)<span></span>
</td>
<td class="nump">490<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Net gains on cash flow hedge reclassified into earnings, net of tax</a></td>
<td class="num">(1,418)<span></span>
</td>
<td class="num">(499)<span></span>
</td>
<td class="num">(295)<span></span>
</td>
</tr>
<tr class="re">
<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 unrealized gains (losses) on marketable securities, net of tax</a></td>
<td class="nump">247<span></span>
</td>
<td class="num">(18)<span></span>
</td>
<td class="num">(46)<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">$ 93,057<span></span>
</td>
<td class="nump">$ 81,252<span></span>
</td>
<td class="nump">$ 53,107<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&amp;loc=d3e557-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=109239629&amp;loc=SL4573702-111684<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=108774443&amp;loc=SL4569616-111683<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=108774443&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_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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, 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://fasb.org/us-gaap/role/ref/legacyRef<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=108774443&amp;loc=SL4569643-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=109239629&amp;loc=SL4573702-111684<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=108774443&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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=109980867&amp;loc=d3e41638-113959<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17A<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL34724391-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&amp;loc=d3e689-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&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://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&amp;loc=SL7669646-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=109978405&amp;loc=d3e80720-113993<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&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_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_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>76
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6592007824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_BusinessCombinationsAbstract', window );"><strong>Business Combinations [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_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock', window );">Schedule of allocation of purchase price</a></td>
<td class="text"><div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-align:justify;text-indent:29px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the final allocation of the purchase price (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:36px;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:94.7265625%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:88%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>125</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,496</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>18,290</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,065</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets, net</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>409</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Goodwill</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,640</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>24,033</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses and other current liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,450</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(691</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total liabilities assumed</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,141</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>18,892</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gain on business acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,243</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total purchase price</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>16,649</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;text-align:center;text-indent:36px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;padding-left:90px;text-indent:-24px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">(1) The accounts receivable balance reflects reserves for product returns, discounts and promotions assumed as part of the acquisition. </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table summarizes the final allocation of the purchase price (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Cash</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>37,981</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>21,426</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36,304</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Goodwill</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>80,419</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36,597</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,456</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>215,183</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Accounts payable</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(29,391</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,376</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(10,864</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,138</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total liabilities assumed</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(45,769</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Net assets acquired</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>169,414</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock', window );">Schedule of acquired intangible assets</a></td>
<td class="text"><div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):</span></div><div style="line-height:120%;text-align:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">     </span><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="7"/></tr><tr><td style="width:55%;"/><td style="width:1%;"/><td style="width:22%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Useful Life</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>4,490</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9 months</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,150</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,640</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table reflects the fair value of the acquired identifiable intangible assets and related estimates of useful lives (in thousands):</span></div><div style="line-height:120%;text-align:center;text-indent:48px;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:92.96875%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:60%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Useful Life</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Reacquired distribution rights</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2.25 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>29,296</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Customer relationships</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14 years</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,029</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Non-competition agreements</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3 years</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>272</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>36,597</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_BusinessAcquisitionProFormaInformationTextBlock', window );">Schedule of pro forma results</a></td>
<td class="text"><div style="line-height:120%;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Pro Forma Results (Unaudited)</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table shows unaudited pro forma results of operations as if the Company had acquired Robopolis on January&#160;1, 2017 (in thousands, except per share amounts):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:81%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>901,612</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>51,887</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income per share:</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Basic income per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.88</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted income per share</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.80</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_BusinessAcquisitionProFormaInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=79982066&amp;loc=d3e1392-128463<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionProFormaInformationTextBlock</td>
</tr>
<tr>
<td style="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_BusinessCombinationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_BusinessCombinationsAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116869197&amp;loc=d3e4845-128472<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock</td>
</tr>
<tr>
<td style="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>77
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822848704">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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="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="2"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">2.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Summary of Significant Accounting Policies</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Basis of Presentation and Foreign Currency Translation</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The accompanying consolidated financial statements include those of iRobot and its subsidiaries, after elimination of all intercompany balances and transactions. iRobot has prepared the accompanying consolidated financial statements in conformity with accounting principles generally accepted in the United States of America ("GAAP"). In addition, certain prior year amounts have been reclassified to conform to the current year presentation.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the Company's subsidiaries that transact in a functional currency other than the U.S. dollar, assets and liabilities are translated into U.S. dollars at period-end foreign exchange rates. Revenues and expenses are translated into U.S. dollars at the average foreign exchange rates for the period. Translation adjustments are excluded from the determination of net income and are recorded in accumulated other comprehensive income (loss), a separate component of stockholders' equity.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company operates and reports using a 52-53&#160;week fiscal year ending on the Saturday closest to December&#160;31. Accordingly, the Company&#8217;s fiscal quarters end on the Saturday that falls closest to the last day of the third month of each quarter.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Use of Estimates</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The preparation of these financial statements in conformity with GAAP requires the Company to make estimates and assumptions that affect the reported amounts of assets and liabilities and revenue and expenses. These estimates and judgments, include but are not limited to, revenue recognition, including performance obligations, variable consideration and other obligations such as product returns and incentives; warranty costs; valuation of goodwill and acquired intangible assets; valuation of financial instruments; accounting for business combinations; evaluating loss contingencies; accounting for stock-based compensation including performance-based assessments; and accounting for income taxes and related valuation allowances. The Company bases these estimates and judgments on historical experience, market participant fair value considerations, projected future cash flows and various other factors that the Company believes are reasonable under the circumstances. Actual results may differ from the Company&#8217;s estimates.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Business Combinations </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for transactions that represent business combinations under the acquisition method of accounting. The Company allocates the total consideration paid for each acquisition to the assets it acquires and liabilities it assumes based on their fair values as of the date of acquisition, including identifiable intangible assets. The Company bases the fair value of identifiable intangible assets acquired in a business combination on valuations that use information and assumptions determined by management and which consider management&#8217;s best estimates of inputs and assumptions that a market participant would use. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the business combination date, its estimates and assumptions are inherently uncertain and subject to refinement. As a result, during the measurement period, which is generally one year from the acquisition date, any adjustment to the assets acquired and liabilities assumed is recorded against goodwill in the period in which the amount is determined. Any adjustment identified subsequent to the measurement period is included in operating results in the period in which the amount is determined.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cash and Cash Equivalents</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company considers all highly liquid investments with maturity of three months or less at the time of purchase to be cash and cash equivalents. The Company invests its excess cash primarily in money market funds or demand deposit accounts of major financial institutions. Accordingly, its cash and cash equivalents are subject to minimal credit and market risk. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, cash and cash equivalents totaled </span><span style="font-family:inherit;font-size:10pt;"><span>$239.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$130.4 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. These cash and cash equivalents are carried at cost, which approximates fair value.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Short Term Investments</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s investments are classified as available-for-sale and are recorded at fair value with any unrealized gain or loss recorded as an element of stockholders&#8217; equity. The fair value of investments is determined based on quoted market prices at the reporting date for those instruments. Investments consisted of the following (in thousands):</span></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"/></tr><tr><td style="width:45%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,016</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>30,035</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>29,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total short term investments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,016</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,035</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,605</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company&#8217;s investments had maturity dates ranging from February 2020 to March 2021. The Company invests primarily in investment grade securities and limits the amount of investment in any single issuer.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Accounts receivable allowances</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for product returns</span><span style="font-family:inherit;font-size:10pt;">: The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for other credits and incentives: </span><span style="font-family:inherit;font-size:10pt;">The Company records an allowance related to customer incentives such as discounts, promotions, price protection and other support programs. The allowance is based on specific terms and conditions included in customer agreements, specific programs and historical experience.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for doubtful accounts</span><span style="font-family:inherit;font-size:10pt;">: The Company records an allowance for doubtful accounts for the estimated amount of accounts receivable that may not be collected based on an assessment of the potential risk of loss associated with delinquent accounts. The allowance including the activity within the allowance was immaterial for fiscal years 2019, 2018 and 2017. The balance at December 28, 2019 was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.0 million</span></span><span style="font-family:inherit;font-size:10pt;">.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Activity related to accounts receivable allowances was as follows (in thousands):</span><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"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Allowance for product returns</span></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="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>53,920</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>42,693</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>27,673</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquired balance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,088</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,575</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>68,476</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>54,981</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(68,217</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(56,164</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(43,831</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,087</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,085</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,218</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>55,191</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>53,920</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>42,693</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Allowance for other credits and incentives</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>97,737</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>61,359</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>23,658</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Acquired balance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,932</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Adjustment related to adoption of ASC 606</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,192</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>287,891</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>198,371</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>110,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(247,775</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(161,672</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(81,269</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Other adjustments</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,807</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,513</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,567</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>134,046</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>97,737</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>61,359</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Inventory</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory is stated at the lower of cost or net realizable value with cost being determined using the first-in, first-out method. The Company maintains a reserve for inventory items to provide for an estimated amount of excess or obsolete inventory.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Warranty</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company typically provides a one-year or two-year warranty against defects in materials and workmanship and will either repair the goods, provide replacement products or refund amounts to the customer for defective product. The Company records estimated warranty costs based on historical experience, at the time revenue is recognized.  Actual results could differ from these estimates, which could cause increases or decreases to the warranty reserves in future periods.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Property and Equipment</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment are recorded at cost and consist primarily of computer equipment, leasehold improvements, business applications software, tooling and machinery. Depreciation is computed using the straight-line method over the estimated useful lives as follows:</span></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="3"/></tr><tr><td style="width:59%;"/><td style="width:40%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Estimated Useful&#160;Life</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5 years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3-7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>Lesser of economic benefit period or term&#160;of&#160;lease</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expenditures for additions and betterments of property and equipment are capitalized. Expenditures for repairs and maintenance are charged to expense as incurred. As assets are retired or sold, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recognized.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Goodwill and Other Long-Lived Assets</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Goodwill represents the excess of the purchase price in a business combination over the fair value of the net tangible and intangible assets acquired. Goodwill is not amortized but rather is assessed for impairment at the reporting unit level annually during its fourth quarter of each fiscal year or more frequently if the Company believes indicators of impairment exist. Goodwill impairment, if any, is determined by comparing the reporting unit's fair value to its carrying value. An impairment loss is recognized in an amount equal to the excess of the reporting unit's carrying value over its fair value, up to the amount of goodwill allocated to the reporting unit.&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other long-lived assets consist principally of completed technology, tradename, customer relationships, reacquired distribution rights and non-competition agreements. Reacquired distribution rights are amortized on an accelerated basis while all other intangible assets are amortized over their respective estimated useful lives on a straight-line basis, consistent with the pattern in which the economic benefits are being utilized. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company periodically evaluates the recoverability of other long-lived assets whenever events and changes in circumstances, such as reductions in demand or significant economic slowdowns in the industry, indicate that the carrying amount of an asset may not be fully recoverable. When indicators of impairment are present, the carrying values of the asset group are evaluated in relation to the future undiscounted cash flows of the underlying business. The net book value of the underlying asset is adjusted to fair value if the sum of the expected discounted cash flows is less than book value. Fair values are based on estimates of market prices and assumptions concerning the amount and timing of estimated future cash flows and assumed discount rates, reflecting varying degrees of perceived risk.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impairment assessment of goodwill and other long-lived assets involves significant estimates and assumptions, which may be unpredictable and inherently uncertain. These estimates and assumptions include identification of reporting units and asset groups, long-term growth rates, profitability, estimated useful lives, comparable market multiples, and discount rates. Any changes in these assumptions could impact the result of the impairment assessment. There was no impairment of goodwill or other long-lived assets during fiscal 2019, 2018 and 2017.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Other Assets</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company holds non-marketable equity securities as part of its strategic investments portfolio. The Company classifies the majority of these securities as equity securities without readily determinable fair values and measures these investments at cost, less any impairment, adjusted for observable price changes. These investments are valued using significant unobservable inputs or data in an inactive market and the valuation requires the Company's judgment due to the absence of market prices and inherent lack of liquidity. The estimated fair value is based on quantitative and qualitative factors including, but not limited to, subsequent financing activities by the investee and projected discounted cash flows. At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, other assets consisted primarily of equity securities without readily determinable fair values and an equity method investment totaling&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$21.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$15.1 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. On October 17, 2019, the Company disposed of one of its non-marketable equity securities, resulting in a gain of </span><span style="font-family:inherit;font-size:10pt;"><span>$8.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> which was recorded in other income, net. In January 2020, Teladoc Health, Inc. announced that it had entered into a definitive agreement to acquire InTouch Health, one of the Company's strategic investees, with an expected closing date of no later than June 30, 2020. The Company expects to record a gain in other income, net at closing.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Financial Instruments and Hedging Activities</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company utilizes derivative instruments to hedge specific financial risks including foreign exchange risk. The Company does not engage in speculative hedging activity. In order to account for a derivative instrument as a hedge, specific criteria must be met, including: (i) ensuring at the inception of the hedge that formal documentation exists for both the hedging relationship and the entity&#8217;s risk management objective and strategy for undertaking the hedge and (ii) at the inception of the hedge and on an ongoing basis, the hedging relationship is expected to be highly effective in achieving offsetting changes in fair value attributed to the hedged risk during the period that the hedge is designated. Further, an assessment of effectiveness is required whenever financial statements or earnings are reported. Absent meeting these criteria, changes in fair value are recognized in other income, net, in the consolidated statements of income. Once the underlying forecasted transaction is realized, the gain or loss from the derivative designated as a hedge of the transaction is reclassified from accumulated other comprehensive income (loss) to the statement of income, in revenue or cost of revenue. </span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Fair Value Measurements</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for certain assets and liabilities at fair value. The fair value is established based on a three-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value. These tiers include: </span></div><div style="line-height:120%;padding-left:48px;padding-top:6px;text-indent:30px;"><span style="padding-top:6px;font-family:inherit;font-size:10pt;padding-right:18px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">Level 1 - observable inputs such as quoted prices for identical instruments in active markets; </span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:78px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 2 - inputs other than quoted prices in active markets that are either directly or indirectly observable; and </span></div></td></tr></table><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:78px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 3 - unobservable inputs in which little or no market data exists, therefore requiring an entity to develop its own assumptions.</span></div></td></tr></table><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Stock-Based Compensation</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for stock-based compensation through recognition of the fair value of the stock-based compensation as a charge against earnings. The fair value of employee stock options is estimated at the grant date using the Black-Scholes option-pricing model. The fair value for time-based restricted stock units and performance-based restricted stock units is based on the closing share price of the Company's common stock on the date of grant. For performance-based restricted stock units, the compensation cost is recognized based on the number of units expected to vest upon the achievement of the performance conditions. The Company recognizes stock-based compensation as an expense on a straight-line basis, over the requisite service period. The Company accounts for forfeitures as they occur, rather than applying an estimated forfeiture rate.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Research and Development</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Costs incurred in the research and development of the Company&#8217;s products are expensed as incurred.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Advertising Expense</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company expenses advertising costs as they are incurred. During the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> advertising expense totaled </span><span style="font-family:inherit;font-size:10pt;"><span>$125.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$114.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$91.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, and are recorded within the selling and marketing expenses in its consolidated statements of income. </span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Income Taxes</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets and liabilities are determined based on the difference between the financial statement and tax basis using enacted tax rates in effect in the years in which those temporary differences are expected to be recovered or settled in each jurisdiction. A valuation allowance is provided if, based upon the weight of available evidence, it is more likely than not that the related benefits will not be realized. The Company regularly reviews the deferred tax assets for recoverability considering historical profitability, projected future taxable income, future reversals of existing taxable temporary differences, as well as feasible tax planning strategies in each jurisdiction. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and December 30, 2017, the Company had a valuation allowance of </span><span style="font-family:inherit;font-size:10pt;"><span>$3.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$0.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, for certain deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company reports a liability for unrecognized tax benefits resulting from uncertain tax positions taken or expected to be taken in a tax return. The Company recognizes interest and penalties, if any, related to unrecognized tax benefits in the income tax provision.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code of 1986, as amended (the "Internal Revenue Code"). Effective for the Company&#8217;s 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign-Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of $11.9 million in the fourth quarter of 2017 which included a provisional amount of $8.9 million related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and $3.0 million related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and there were no material adjustments to the provisional amounts recorded.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Concentration of Credit Risk and Significant Customers</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financial instruments which potentially expose the Company to concentrations of credit risk consist of accounts receivable and cash and cash equivalents. Management believes its credit policies are prudent and reflect normal industry terms and business risk. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">two</span><span style="font-family:inherit;font-size:10pt;"> customers accounted for a total of </span><span style="font-family:inherit;font-size:10pt;"><span>26.6%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>23.1%</span></span><span style="font-family:inherit;font-size:10pt;"> of the Company's accounts receivable balance, respectively. For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, the Company generated </span><span style="font-family:inherit;font-size:10pt;"><span>21.3%</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>17.3%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>13.5%</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, of total revenue from one of its retailers (Amazon). </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company maintains its cash in bank deposit accounts and money market funds at high quality financial institutions. The individual balances, at times, may exceed federally insured limits. </span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Net Income Per Share</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Basic income per share is calculated using the Company's weighted-average outstanding common shares. Diluted income per share is calculated using the Company's weighted-average outstanding common shares including the dilutive effect of stock awards as determined under the treasury stock method. The following table presents the calculation of both basic and diluted net income per share:</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>85,300</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>87,992</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>50,964</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Weighted-average shares outstanding</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,097</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>27,692</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>27,611</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Dilutive effect of employee stock plans</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>638</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>948</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,142</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted weighted-average shares outstanding</span></div></td><td colspan="2" 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;"><span style="font-family:inherit;font-size:10pt;"><span>28,735</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,640</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,753</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Basic income per share</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.04</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.18</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.85</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted income per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2.97</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.07</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.77</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Restricted stock units and stock options representing approximately </span><span style="font-family:inherit;font-size:10pt;"><span>0.2 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>0.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>0.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> shares of common stock for the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, respectively, were excluded from the computation of diluted earnings per share as their effect would have been antidilutive. </span></div><div style="line-height:120%;padding-top:6px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Recently Adopted Accounting Standards</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2018, the Financial Accounting Standards Board ("FASB") issued&#160;Accounting Standards Update ("ASU") No.&#160;2018-07,&#160;"Compensation - Stock Compensation: Improvements to Nonemployee Share-Based Payment Accounting&#160;(Topic 718)." The amendments in&#160;ASU&#160;No. 2018-07&#160;expand the scope of Topic 718&#160;to include share-based payments issued to nonemployees for goods or services. The amendments in this ASU are effective for annual periods beginning after December 15, 2018 and interim periods within those annual periods, with early adoption permitted. The Company adopted this standard effective December 30, 2018 which did not have a material impact on the Company's consolidated financial statements and related disclosures.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In February 2016, the FASB issued ASU No. 2016-02&#160;"Leases." This ASU and subsequently issued amendments require lessees to recognize the assets and liabilities on their balance sheet for the rights and obligations created by most leases and continue to recognize expenses on their income statements over the lease term.&#160;The standard also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows arising from leases. In July 2018, the FASB issued ASU No. 2018-11, "Leases (Topic 842): Targeted Improvements," which provide an alternative transition method that entities can elect when adopting the new standard. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company adopted the standard effective December 30, 2018 using the alternative transition method which resulted in the recognition of operating lease right-of-use assets and operating lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The Company's consolidated financial statements as of and for the year ended December&#160;28, 2019 are presented under the new standard, while the comparative fiscal years presented are not adjusted and continue to be reported in accordance with the historical accounting policy. See Note 4, "Leases," for the required disclosures related to the impact of adopting this standard and a discussion of the Company's updated policies related to lease accounting.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Recently Issued Accounting Standards</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In December 2019, the FASB issued ASU No. 2019-12, "Income Taxes - Simplifying the Accounting for Income Taxes." The ASU simplifies the accounting for income taxes by removing certain exceptions to the general principles as well as clarifying and amending existing guidance to improve consistent application. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020, with early adoption permitted. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective or prospective basis. The Company intends to adopt the ASU effective January 3, 2021, and is currently evaluating the impact to the consolidated financial statements. </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In August 2018, the FASB issued ASU No. 2018-15, "Intangibles - Goodwill and Other Internal-Use Software." The new standard aligns 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 (and hosting arrangements that include an internal use software license). The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019, with early adoption permitted. Implementation should be applied either retrospectively or prospectively to all implementation costs incurred after the date of adoption. The Company intends to adopt the ASU using the prospective method effective December 29, 2019, and does not expect the new standard will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In August 2018, the FASB issued ASU No. 2018-13, "Fair Value Measurement: Disclosure Framework&#8212;Changes to the Disclosure Requirements for Fair Value Measurement." The amendment modifies disclosure requirements related to fair value measurement. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019. Implementation on a prospective or retrospective basis varies by specific disclosure requirement. Early adoption is permitted. The standard also allows for early adoption of any removed or modified disclosures upon issuance of this ASU while delaying adoption of the additional disclosures until their effective date. The Company does not believe this amendment will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2016, the FASB issued ASU No. 2016-13, "Measurement of Credit Losses on Financial Instruments," which amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments. This may result in the earlier recognition of allowances for losses. The guidance is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years, with early adoption permitted.&#160;The Company intends to adopt the ASU effective December 29, 2019. The Company does not believe the new standard will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time, new accounting pronouncements are issued by FASB that are adopted by the Company as of the specified effective date. Unless otherwise discussed, the Company believes that recently issued standards, which are not yet effective, will not have a material impact on the Company&#8217;s consolidated financial statements upon adoption.</span></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://fasb.org/us-gaap/role/ref/legacyRef<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>78
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6814478464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits (Notes)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement Benefits [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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock', window );">Employee Benefits</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">16.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Employee Benefits</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company sponsors a retirement plan under Section&#160;401(k) of the Internal Revenue Code (the "Retirement Plan"). All Company employees, with the exception of temporary, contract and international employees are eligible to participate in the Retirement Plan after satisfying age requirements prescribed by the Retirement Plan. Under the Retirement Plan, employees may make tax-deferred contributions, and the Company, at its sole discretion, and subject to the limits prescribed by the IRS, may make either a nonelective contribution on behalf of all eligible employees or a matching contribution on behalf of all plan participants.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company elected to make a matching contribution of approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$2.9 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$2.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$2.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> for the plan years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, respectively. The employer contribution represents a matching contribution at a rate of </span><span style="font-family:inherit;font-size:10pt;"><span>50%</span></span><span style="font-family:inherit;font-size:10pt;"> of each employee&#8217;s first </span><span style="font-family:inherit;font-size:10pt;"><span>six percent</span></span><span style="font-family:inherit;font-size:10pt;"> contribution. Accordingly, each employee participating is entitled up to a maximum of </span><span style="font-family:inherit;font-size:10pt;"><span>three percent</span></span><span style="font-family:inherit;font-size:10pt;"> of his or her eligible annual payroll.</span></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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 pension and other postretirement benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI http://asc.fasb.org/topic&amp;trid=2235017<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>79
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6816868128">
<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">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Basis of Presentation and Foreign Currency Translation</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The accompanying consolidated financial statements include those of iRobot and its subsidiaries, after elimination of all intercompany balances and transactions. iRobot has prepared the accompanying consolidated financial statements in conformity with accounting principles generally accepted in the United States of America ("GAAP"). In addition, certain prior year amounts have been reclassified to conform to the current year presentation.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">For the Company's subsidiaries that transact in a functional currency other than the U.S. dollar, assets and liabilities are translated into U.S. dollars at period-end foreign exchange rates. Revenues and expenses are translated into U.S. dollars at the average foreign exchange rates for the period. Translation adjustments are excluded from the determination of net income and are recorded in accumulated other comprehensive income (loss), a separate component of stockholders' equity.</span></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_FiscalPeriod', window );">Fiscal Year-End</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company operates and reports using a 52-53&#160;week fiscal year ending on the Saturday closest to December&#160;31. Accordingly, the Company&#8217;s fiscal quarters end on the Saturday that falls closest to the last day of the third month of each quarter.</span></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_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Use of Estimates</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The preparation of these financial statements in conformity with GAAP requires the Company to make estimates and assumptions that affect the reported amounts of assets and liabilities and revenue and expenses. These estimates and judgments, include but are not limited to, revenue recognition, including performance obligations, variable consideration and other obligations such as product returns and incentives; warranty costs; valuation of goodwill and acquired intangible assets; valuation of financial instruments; accounting for business combinations; evaluating loss contingencies; accounting for stock-based compensation including performance-based assessments; and accounting for income taxes and related valuation allowances. The Company bases these estimates and judgments on historical experience, market participant fair value considerations, projected future cash flows and various other factors that the Company believes are reasonable under the circumstances. Actual results may differ from the Company&#8217;s estimates.</span></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_BusinessCombinationsPolicy', window );">Business Combinations</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Business Combinations </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for transactions that represent business combinations under the acquisition method of accounting. The Company allocates the total consideration paid for each acquisition to the assets it acquires and liabilities it assumes based on their fair values as of the date of acquisition, including identifiable intangible assets. The Company bases the fair value of identifiable intangible assets acquired in a business combination on valuations that use information and assumptions determined by management and which consider management&#8217;s best estimates of inputs and assumptions that a market participant would use. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the business combination date, its estimates and assumptions are inherently uncertain and subject to refinement. As a result, during the measurement period, which is generally one year from the acquisition date, any adjustment to the assets acquired and liabilities assumed is recorded against goodwill in the period in which the amount is determined. Any adjustment identified subsequent to the measurement period is included in operating results in the period in which the amount is determined.</span></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_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Cash and Cash Equivalents</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company considers all highly liquid investments with maturity of three months or less at the time of purchase to be cash and cash equivalents. The Company invests its excess cash primarily in money market funds or demand deposit accounts of major financial institutions. Accordingly, its cash and cash equivalents are subject to minimal credit and market risk. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, cash and cash equivalents totaled </span><span style="font-family:inherit;font-size:10pt;"><span>$239.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$130.4 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. These cash and cash equivalents are carried at cost, which approximates fair value.</span></div><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_irbt_ShortTermInvestmentsPolicyTextBlock', window );">Short Term Investments</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Short Term Investments</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s investments are classified as available-for-sale and are recorded at fair value with any unrealized gain or loss recorded as an element of stockholders&#8217; equity. The fair value of investments is determined based on quoted market prices at the reporting date for those instruments. Investments consisted of the following (in thousands):</span></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"/></tr><tr><td style="width:45%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair<br/>Market&#160;Value</span></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;"><span style="font-family:inherit;font-size:10pt;">Corporate and government bonds</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,016</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>30,035</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>29,605</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Convertible note</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,000</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total short term investments</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,016</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,032</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,035</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,605</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company&#8217;s investments had maturity dates ranging from February 2020 to March 2021. The Company invests primarily in investment grade securities and limits the amount of investment in any single issuer.</span></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_ReceivablesPolicyTextBlock', window );">Accounts receivable allowances</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Accounts receivable allowances</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for product returns</span><span style="font-family:inherit;font-size:10pt;">: The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for other credits and incentives: </span><span style="font-family:inherit;font-size:10pt;">The Company records an allowance related to customer incentives such as discounts, promotions, price protection and other support programs. The allowance is based on specific terms and conditions included in customer agreements, specific programs and historical experience.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;">Allowance for doubtful accounts</span><span style="font-family:inherit;font-size:10pt;">: The Company records an allowance for doubtful accounts for the estimated amount of accounts receivable that may not be collected based on an assessment of the potential risk of loss associated with delinquent accounts. The allowance including the activity within the allowance was immaterial for fiscal years 2019, 2018 and 2017. The balance at December 28, 2019 was </span><span style="font-family:inherit;font-size:10pt;"><span>$1.0 million</span></span><span style="font-family:inherit;font-size:10pt;">.</span></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_InventoryPolicyTextBlock', window );">Inventory</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Inventory</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory is stated at the lower of cost or net realizable value with cost being determined using the first-in, first-out method. The Company maintains a reserve for inventory items to provide for an estimated amount of excess or obsolete inventory.</span></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_StandardProductWarrantyPolicy', window );">Warranty</a></td>
<td class="text"><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Warranty</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company typically provides a one-year or two-year warranty against defects in materials and workmanship and will either repair the goods, provide replacement products or refund amounts to the customer for defective product. The Company records estimated warranty costs based on historical experience, at the time revenue is recognized.  Actual results could differ from these estimates, which could cause increases or decreases to the warranty reserves in future periods.</span></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_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property and Equipment</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Property and Equipment</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment are recorded at cost and consist primarily of computer equipment, leasehold improvements, business applications software, tooling and machinery. Depreciation is computed using the straight-line method over the estimated useful lives as follows:</span></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="3"/></tr><tr><td style="width:59%;"/><td style="width:40%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Estimated Useful&#160;Life</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5 years</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">5</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">2-5</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">3-7</span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></div></td><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>Lesser of economic benefit period or term&#160;of&#160;lease</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Expenditures for additions and betterments of property and equipment are capitalized. Expenditures for repairs and maintenance are charged to expense as incurred. As assets are retired or sold, the related cost and accumulated depreciation are removed from the accounts and any resulting gain or loss is recognized.</span></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_GoodwillAndIntangibleAssetsPolicyTextBlock', window );">Goodwill and Other Long-Lived Assets</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Goodwill and Other Long-Lived Assets</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Goodwill represents the excess of the purchase price in a business combination over the fair value of the net tangible and intangible assets acquired. Goodwill is not amortized but rather is assessed for impairment at the reporting unit level annually during its fourth quarter of each fiscal year or more frequently if the Company believes indicators of impairment exist. Goodwill impairment, if any, is determined by comparing the reporting unit's fair value to its carrying value. An impairment loss is recognized in an amount equal to the excess of the reporting unit's carrying value over its fair value, up to the amount of goodwill allocated to the reporting unit.&#160;</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other long-lived assets consist principally of completed technology, tradename, customer relationships, reacquired distribution rights and non-competition agreements. Reacquired distribution rights are amortized on an accelerated basis while all other intangible assets are amortized over their respective estimated useful lives on a straight-line basis, consistent with the pattern in which the economic benefits are being utilized. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company periodically evaluates the recoverability of other long-lived assets whenever events and changes in circumstances, such as reductions in demand or significant economic slowdowns in the industry, indicate that the carrying amount of an asset may not be fully recoverable. When indicators of impairment are present, the carrying values of the asset group are evaluated in relation to the future undiscounted cash flows of the underlying business. The net book value of the underlying asset is adjusted to fair value if the sum of the expected discounted cash flows is less than book value. Fair values are based on estimates of market prices and assumptions concerning the amount and timing of estimated future cash flows and assumed discount rates, reflecting varying degrees of perceived risk.</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The impairment assessment of goodwill and other long-lived assets involves significant estimates and assumptions, which may be unpredictable and inherently uncertain. These estimates and assumptions include identification of reporting units and asset groups, long-term growth rates, profitability, estimated useful lives, comparable market multiples, and discount rates. Any changes in these assumptions could impact the result of the impairment assessment. There was no impairment of goodwill or other long-lived assets during fiscal 2019, 2018 and 2017.</span></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_InvestmentPolicyTextBlock', window );">Other Assets</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Other Assets</span></div><div style="line-height:120%;padding-bottom:12px;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company holds non-marketable equity securities as part of its strategic investments portfolio. The Company classifies the majority of these securities as equity securities without readily determinable fair values and measures these investments at cost, less any impairment, adjusted for observable price changes. These investments are valued using significant unobservable inputs or data in an inactive market and the valuation requires the Company's judgment due to the absence of market prices and inherent lack of liquidity. The estimated fair value is based on quantitative and qualitative factors including, but not limited to, subsequent financing activities by the investee and projected discounted cash flows. At&#160;</span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, other assets consisted primarily of equity securities without readily determinable fair values and an equity method investment totaling&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$21.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and&#160;</span><span style="font-family:inherit;font-size:10pt;"><span>$15.1 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. On October 17, 2019, the Company disposed of one of its non-marketable equity securities, resulting in a gain of </span><span style="font-family:inherit;font-size:10pt;"><span>$8.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> which was recorded in other income, net. In January 2020, Teladoc Health, Inc. announced that it had entered into a definitive agreement to acquire InTouch Health, one of the Company's strategic investees, with an expected closing date of no later than June 30, 2020. The Company expects to record a gain in other income, net at closing.</span></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_DerivativesPolicyTextBlock', window );">Financial Instruments and Hedging Activities</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Financial Instruments and Hedging Activities</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company utilizes derivative instruments to hedge specific financial risks including foreign exchange risk. The Company does not engage in speculative hedging activity. In order to account for a derivative instrument as a hedge, specific criteria must be met, including: (i) ensuring at the inception of the hedge that formal documentation exists for both the hedging relationship and the entity&#8217;s risk management objective and strategy for undertaking the hedge and (ii) at the inception of the hedge and on an ongoing basis, the hedging relationship is expected to be highly effective in achieving offsetting changes in fair value attributed to the hedged risk during the period that the hedge is designated. Further, an assessment of effectiveness is required whenever financial statements or earnings are reported. Absent meeting these criteria, changes in fair value are recognized in other income, net, in the consolidated statements of income. Once the underlying forecasted transaction is realized, the gain or loss from the derivative designated as a hedge of the transaction is reclassified from accumulated other comprehensive income (loss) to the statement of income, in revenue or cost of revenue. </span></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_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value Measurements</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Fair Value Measurements</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for certain assets and liabilities at fair value. The fair value is established based on a three-tier fair value hierarchy, which prioritizes the inputs used in measuring fair value. These tiers include: </span></div><div style="line-height:120%;padding-left:48px;padding-top:6px;text-indent:30px;"><span style="padding-top:6px;font-family:inherit;font-size:10pt;padding-right:18px;">&#8226;</span><span style="font-family:inherit;font-size:10pt;">Level 1 - observable inputs such as quoted prices for identical instruments in active markets; </span></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:96px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:78px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 2 - inputs other than quoted prices in active markets that are either directly or indirectly observable; and </span></div></td></tr></table><div style="line-height:120%;font-size:10pt;padding-left:78px;"><span style="font-family:inherit;font-size:10pt;">&#8226;</span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Level 3 - unobservable inputs in which little or no market data exists, therefore requiring an entity to develop its own assumptions.</span></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_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Stock-Based Compensation</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Stock-Based Compensation</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company accounts for stock-based compensation through recognition of the fair value of the stock-based compensation as a charge against earnings. The fair value of employee stock options is estimated at the grant date using the Black-Scholes option-pricing model. The fair value for time-based restricted stock units and performance-based restricted stock units is based on the closing share price of the Company's common stock on the date of grant. For performance-based restricted stock units, the compensation cost is recognized based on the number of units expected to vest upon the achievement of the performance conditions. The Company recognizes stock-based compensation as an expense on a straight-line basis, over the requisite service period. The Company accounts for forfeitures as they occur, rather than applying an estimated forfeiture rate.</span></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_ResearchAndDevelopmentExpensePolicy', window );">Research and Development</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Research and Development</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Costs incurred in the research and development of the Company&#8217;s products are expensed as incurred.</span></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_AdvertisingCostsPolicyTextBlock', window );">Advertising Expense</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Advertising Expense</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company expenses advertising costs as they are incurred. During the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> advertising expense totaled </span><span style="font-family:inherit;font-size:10pt;"><span>$125.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$114.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$91.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, and are recorded within the selling and marketing expenses in its consolidated statements of income. </span></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_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Income Taxes</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets and liabilities are determined based on the difference between the financial statement and tax basis using enacted tax rates in effect in the years in which those temporary differences are expected to be recovered or settled in each jurisdiction. A valuation allowance is provided if, based upon the weight of available evidence, it is more likely than not that the related benefits will not be realized. The Company regularly reviews the deferred tax assets for recoverability considering historical profitability, projected future taxable income, future reversals of existing taxable temporary differences, as well as feasible tax planning strategies in each jurisdiction. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and December 30, 2017, the Company had a valuation allowance of </span><span style="font-family:inherit;font-size:10pt;"><span>$3.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.1 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$0.8 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, for certain deferred tax assets for which the Company believes do not meet the "more likely than not" criteria for recognition.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company reports a liability for unrecognized tax benefits resulting from uncertain tax positions taken or expected to be taken in a tax return. The Company recognizes interest and penalties, if any, related to unrecognized tax benefits in the income tax provision.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 22, 2017, the Tax Cuts and Jobs Act of 2017 (the "Act") was signed into law making significant changes to the Internal Revenue Code of 1986, as amended (the "Internal Revenue Code"). Effective for the Company&#8217;s 2018 tax year, the Act reduces the statutory federal corporate tax rate from 35% to 21% and implements certain additional provisions including the Global Intangible Low-Taxed Income inclusion and the Foreign-Derived Intangible Income deduction. Upon the enactment of the Act in December 2017, the Company recorded a one-time provisional income tax provision of $11.9 million in the fourth quarter of 2017 which included a provisional amount of $8.9 million related to the remeasurement of certain deferred tax assets and liabilities based on the tax rates at which they are expected to reverse in the future and $3.0 million related to the one-time transition tax on the mandatory deemed repatriation of foreign earnings. On December 22, 2017, the SEC staff issued Staff Accounting Bulletin No. 118 ("SAB 118") to address the application of U.S. GAAP in situations when a registrant does not have the necessary information available, prepared, or analyzed (including computations) in reasonable detail to complete the accounting for certain income tax effects of the Act. In accordance with SAB 118, during the fourth quarter of 2018, the Company finalized its analysis of the income tax effects of the Act and there were no material adjustments to the provisional amounts recorded.</span></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_ConcentrationRiskDisclosureTextBlock', window );">Concentration of Credit Risk and Significant Customers</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Concentration of Credit Risk and Significant Customers</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Financial instruments which potentially expose the Company to concentrations of credit risk consist of accounts receivable and cash and cash equivalents. Management believes its credit policies are prudent and reflect normal industry terms and business risk. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">two</span><span style="font-family:inherit;font-size:10pt;"> customers accounted for a total of </span><span style="font-family:inherit;font-size:10pt;"><span>26.6%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>23.1%</span></span><span style="font-family:inherit;font-size:10pt;"> of the Company's accounts receivable balance, respectively. For the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;">, the Company generated </span><span style="font-family:inherit;font-size:10pt;"><span>21.3%</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>17.3%</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>13.5%</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, of total revenue from one of its retailers (Amazon). </span></div>The Company maintains its cash in bank deposit accounts and money market funds at high quality financial institutions. The individual balances, at times, may exceed federally insured limits.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerSharePolicyTextBlock', window );">Net Income Per Share</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Net Income Per Share</span></div><div style="line-height:120%;padding-bottom:6px;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Basic income per share is calculated using the Company's weighted-average outstanding common shares. Diluted income per share is calculated using the Company's weighted-average outstanding common shares including the dilutive effect of stock awards as determined under the treasury stock method. The following table presents the calculation of both basic and diluted net income per share:</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>85,300</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>87,992</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>50,964</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Weighted-average shares outstanding</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,097</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>27,692</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>27,611</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Dilutive effect of employee stock plans</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>638</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>948</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,142</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted weighted-average shares outstanding</span></div></td><td colspan="2" 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;"><span style="font-family:inherit;font-size:10pt;"><span>28,735</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,640</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,753</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Basic income per share</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.04</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.18</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:3px double #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.85</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted income per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2.97</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>3.07</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.77</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span style="font-family:inherit;font-size:10pt;">Restricted stock units and stock options representing approximately </span><span style="font-family:inherit;font-size:10pt;"><span>0.2 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>0.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>0.0 million</span></span><span style="font-family:inherit;font-size:10pt;"> shares of common stock for the fiscal years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span>, respectively, were excluded from the computation of diluted earnings per share as their effect would have been antidilutive.<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Recent Accounting Pronouncements</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Recently Adopted Accounting Standards</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2018, the Financial Accounting Standards Board ("FASB") issued&#160;Accounting Standards Update ("ASU") No.&#160;2018-07,&#160;"Compensation - Stock Compensation: Improvements to Nonemployee Share-Based Payment Accounting&#160;(Topic 718)." The amendments in&#160;ASU&#160;No. 2018-07&#160;expand the scope of Topic 718&#160;to include share-based payments issued to nonemployees for goods or services. The amendments in this ASU are effective for annual periods beginning after December 15, 2018 and interim periods within those annual periods, with early adoption permitted. The Company adopted this standard effective December 30, 2018 which did not have a material impact on the Company's consolidated financial statements and related disclosures.</span></div><div style="line-height:120%;padding-top:6px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In February 2016, the FASB issued ASU No. 2016-02&#160;"Leases." This ASU and subsequently issued amendments require lessees to recognize the assets and liabilities on their balance sheet for the rights and obligations created by most leases and continue to recognize expenses on their income statements over the lease term.&#160;The standard also requires disclosures designed to give financial statement users information on the amount, timing and uncertainty of cash flows arising from leases. In July 2018, the FASB issued ASU No. 2018-11, "Leases (Topic 842): Targeted Improvements," which provide an alternative transition method that entities can elect when adopting the new standard. Under this alternative transition method, a company is permitted to use its effective date as the date of initial application without restating comparative period financial statements. The Company adopted the standard effective December 30, 2018 using the alternative transition method which resulted in the recognition of operating lease right-of-use assets and operating lease liabilities of approximately&#160;$52.8 million&#160;and&#160;$67.3 million, respectively. The Company's consolidated financial statements as of and for the year ended December&#160;28, 2019 are presented under the new standard, while the comparative fiscal years presented are not adjusted and continue to be reported in accordance with the historical accounting policy. See Note 4, "Leases," for the required disclosures related to the impact of adopting this standard and a discussion of the Company's updated policies related to lease accounting.</span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Recently Issued Accounting Standards</span></div><div style="line-height:120%;padding-top:8px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In December 2019, the FASB issued ASU No. 2019-12, "Income Taxes - Simplifying the Accounting for Income Taxes." The ASU simplifies the accounting for income taxes by removing certain exceptions to the general principles as well as clarifying and amending existing guidance to improve consistent application. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2020, with early adoption permitted. Depending on the amendment, adoption may be applied on the retrospective, modified retrospective or prospective basis. The Company intends to adopt the ASU effective January 3, 2021, and is currently evaluating the impact to the consolidated financial statements. </span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In August 2018, the FASB issued ASU No. 2018-15, "Intangibles - Goodwill and Other Internal-Use Software." The new standard aligns 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 (and hosting arrangements that include an internal use software license). The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019, with early adoption permitted. Implementation should be applied either retrospectively or prospectively to all implementation costs incurred after the date of adoption. The Company intends to adopt the ASU using the prospective method effective December 29, 2019, and does not expect the new standard will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In August 2018, the FASB issued ASU No. 2018-13, "Fair Value Measurement: Disclosure Framework&#8212;Changes to the Disclosure Requirements for Fair Value Measurement." The amendment modifies disclosure requirements related to fair value measurement. The amendments to this ASU are effective for fiscal years, and interim periods within those fiscal years, beginning after December 15, 2019. Implementation on a prospective or retrospective basis varies by specific disclosure requirement. Early adoption is permitted. The standard also allows for early adoption of any removed or modified disclosures upon issuance of this ASU while delaying adoption of the additional disclosures until their effective date. The Company does not believe this amendment will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">In June 2016, the FASB issued ASU No. 2016-13, "Measurement of Credit Losses on Financial Instruments," which amends the impairment model by requiring entities to use a forward-looking approach based on expected losses rather than incurred losses to estimate credit losses on certain types of financial instruments. This may result in the earlier recognition of allowances for losses. The guidance is effective for fiscal years beginning after December 15, 2019, including interim periods within those fiscal years, with early adoption permitted.&#160;The Company intends to adopt the ASU effective December 29, 2019. The Company does not believe the new standard will have a material impact on its consolidated financial statements.</span></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time, new accounting pronouncements are issued by FASB that are adopted by the Company as of the specified effective date. Unless otherwise discussed, the Company believes that recently issued standards, which are not yet effective, will not have a material impact on the Company&#8217;s consolidated financial statements upon adoption.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_ShortTermInvestmentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Short Term Investments [Policy Text Block]</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;">irbt_ShortTermInvestmentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_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_AdvertisingCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 advertising cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 720<br> -SubTopic 35<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6420018&amp;loc=d3e36677-107848<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdvertisingCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</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_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="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_BusinessCombinationsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (a)-(d)<br> -URI http://asc.fasb.org/extlink&amp;oid=6909625&amp;loc=d3e227-128457<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsPolicy</td>
</tr>
<tr>
<td style="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_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=98513485&amp;loc=d3e4273-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ConcentrationRiskDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskDisclosureTextBlock</td>
</tr>
<tr>
<td style="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_DerivativesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 its derivative instruments and hedging activities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=d3e41620-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=d3e41638-113959<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5579245-113959<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=d3e41675-113959<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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.(n))<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e23780-122690<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5579240-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_DerivativesPolicyTextBlock</td>
</tr>
<tr>
<td style="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_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6371337&amp;loc=d3e3630-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_EarningsPerSharePolicyTextBlock</td>
</tr>
<tr>
<td style="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_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 60<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=7493716&amp;loc=d3e21868-110260<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13279-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="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_FiscalPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 determining an entity's fiscal year or other fiscal period. This disclosure may include identification of the fiscal period end-date, the length of the fiscal period, any reporting period lag between the entity and its subsidiaries, or equity investees. If a reporting lag exists, the closing date of the entity having a different period end is generally noted, along with an explanation of the necessity for using different closing dates. Any intervening events that materially affect the entity's financial position or results of operations are generally also disclosed.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=108774443&amp;loc=d3e5291-111683<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.3A-02(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=116822174&amp;loc=d3e355033-122828<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.3A-03(b))<br> -URI http://asc.fasb.org/extlink&amp;oid=116822174&amp;loc=d3e355100-122828<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiscalPeriod</td>
</tr>
<tr>
<td style="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_GoodwillAndIntangibleAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=108376223&amp;loc=d3e13816-109267<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<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_GoodwillAndIntangibleAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="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_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32847-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 740<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6491622&amp;loc=d3e9504-115650<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32809-109319<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116657188&amp;loc=SL116659661-227067<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32840-109319<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32247-109318<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=116821951&amp;loc=d3e32280-109318<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 05<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=65884525&amp;loc=d3e40913-109327<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="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_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116846552&amp;loc=d3e543-108305<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="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_InvestmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 investment in financial 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentPolicyTextBlock</td>
</tr>
<tr>
<td style="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_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_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, basis of assets, depreciation and depletion methods used, including composite deprecation, estimated useful lives, capitalization policy, accounting treatment for costs incurred for repairs and maintenance, capitalized interest and the method it is calculated, disposals and impairments.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=6877327&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ReceivablesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 receivable. Includes, but is not limited to, accounts receivable and financing receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=118936363&amp;loc=d3e5033-111524<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10178-111534<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10149-111534<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesPolicyTextBlock</td>
</tr>
<tr>
<td style="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_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 costs it has 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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="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_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b),(f)<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116856206&amp;loc=d3e5047-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_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="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_StandardProductWarrantyPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 standard warranties including the methodology for measuring the liability.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=68068213&amp;loc=d3e12565-110249<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyPolicy</td>
</tr>
<tr>
<td style="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_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="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>80
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836601728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>- Accounts Receivable Allowances (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_srt_ValuationAndQualifyingAccountsDisclosureLineItems', window );"><strong>SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [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_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables', window );">Allowance for Doubtful Accounts, Premiums and Other Receivables</a></td>
<td class="nump">$ 1,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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforothercreditsandincentivesMember', window );">Allowance for other credits and incentives [Member]</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_MovementInValuationAllowancesAndReservesRollForward', window );"><strong>SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]</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_ValuationAllowancesAndReservesBalance', window );">Balance at beginning of period</a></td>
<td class="nump">97,737<span></span>
</td>
<td class="nump">$ 61,359<span></span>
</td>
<td class="nump">$ 23,658<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired', window );">Acquired balance</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">11,932<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts', window );">Adjustment related to adoption of ASC 606</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,192<span></span>
</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_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Provision</a></td>
<td class="nump">287,891<span></span>
</td>
<td class="nump">198,371<span></span>
</td>
<td class="nump">110,605<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesDeductions', window );">Deduction</a></td>
<td class="num">(247,775)<span></span>
</td>
<td class="num">(161,672)<span></span>
</td>
<td class="num">(81,269)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesAdjustments', window );">Other adjustments</a></td>
<td class="num">(3,807)<span></span>
</td>
<td class="num">(1,513)<span></span>
</td>
<td class="num">(3,567)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at end of period</a></td>
<td class="nump">134,046<span></span>
</td>
<td class="nump">97,737<span></span>
</td>
<td class="nump">61,359<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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforproductreturnsMember', window );">Allowance for product returns [Member]</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_MovementInValuationAllowancesAndReservesRollForward', window );"><strong>SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]</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_ValuationAllowancesAndReservesBalance', window );">Balance at beginning of period</a></td>
<td class="nump">53,920<span></span>
</td>
<td class="nump">42,693<span></span>
</td>
<td class="nump">27,673<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired', window );">Acquired balance</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">6,088<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense', window );">Provision</a></td>
<td class="nump">71,575<span></span>
</td>
<td class="nump">68,476<span></span>
</td>
<td class="nump">54,981<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesDeductions', window );">Deduction</a></td>
<td class="num">(68,217)<span></span>
</td>
<td class="num">(56,164)<span></span>
</td>
<td class="num">(43,831)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesAdjustments', window );">Other adjustments</a></td>
<td class="num">(2,087)<span></span>
</td>
<td class="num">(1,085)<span></span>
</td>
<td class="num">(2,218)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ValuationAllowancesAndReservesBalance', window );">Balance at end of period</a></td>
<td class="nump">$ 55,191<span></span>
</td>
<td class="nump">$ 53,920<span></span>
</td>
<td class="nump">$ 42,693<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ValuationAndQualifyingAccountsDisclosureLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ValuationAndQualifyingAccountsDisclosureLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</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_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation allowance as of the balance sheet date to reduce the gross amount of receivables to estimated net realizable value, which would be presented in parentheses on the face of the balance sheet.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<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=118936363&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_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables</td>
</tr>
<tr>
<td style="padding-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_MovementInValuationAllowancesAndReservesRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_MovementInValuationAllowancesAndReservesRollForward</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation and qualifying accounts and reserves from adjustment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-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_ValuationAllowancesAndReservesAdjustments</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesBalance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-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_ValuationAllowancesAndReservesBalance</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesChargedToCostAndExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation and qualifying accounts and reserves from charge to cost and expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-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_ValuationAllowancesAndReservesChargedToCostAndExpense</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesChargedToOtherAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation and qualifying accounts and reserves from charge to accounts other than cost and expense.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-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_ValuationAllowancesAndReservesChargedToOtherAccounts</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesDeductions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation and qualifying accounts and reserves.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-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_ValuationAllowancesAndReservesDeductions</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesReservesOfBusinessesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 valuation and qualifying accounts and reserves from 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 4<br> -Subparagraph (SX 210.12-09)<br> -URI http://asc.fasb.org/extlink&amp;oid=26873400&amp;loc=d3e24092-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_ValuationAllowancesAndReservesReservesOfBusinessesAcquired</td>
</tr>
<tr>
<td style="padding-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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforothercreditsandincentivesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforothercreditsandincentivesMember</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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforproductreturnsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_ValuationAllowancesAndReservesTypeAxis=irbt_AllowanceforproductreturnsMember</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>81
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6815257440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock', window );">Schedule of income (loss) before provision for income taxes</a></td>
<td class="text"><div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Income (loss) before provision for income taxes was as follows (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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="12"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>84,225</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>113,078</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>71,382</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,608</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,456</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,984</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Income before income taxes</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>98,833</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>108,622</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>76,366</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Components of income tax expense</a></td>
<td class="text"><div style="line-height:174%;padding-top:6px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of income tax expense were as follows (in thousands):</span></div><div style="line-height:120%;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">&#160;</span></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"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Current</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13,366</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,627</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,555</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,004</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,676</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,691</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,941</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,732</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,355</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total current income tax provision</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>25,311</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>32,035</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>26,601</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Federal</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(9,345</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(2,475</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>6,664</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,783</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,149</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,470</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(650</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(7,781</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,393</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:top;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total deferred income tax provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(11,778</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(11,405</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,199</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:44px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Total income tax provision</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,533</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,630</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,402</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Reconciliation of the expected tax (benefit) expense</a></td>
<td class="text"><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The reconciliation of statutory federal income tax to actual tax expense is as follows (in thousands):</span></div><div style="line-height:120%;padding-top:10px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Statutory federal income tax</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>20,755</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>22,812</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>26,728</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">State taxes (net of federal benefit)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,999</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,312</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,089</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Federal and state credits</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(8,152</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(5,638</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,486</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic production activities deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,528</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Excess tax benefits relating to stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(6,468</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(6,529</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(11,709</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Tax Cuts and Jobs Act of 2017</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,127</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,861</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign-derived intangible income deduction</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(4,180</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,678</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">EMEA business restructuring</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,292</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Executive compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,081</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>745</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,354</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tax impact of foreign earnings</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,986</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,336</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(636</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Change in valuation allowance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,678</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>348</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>800</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>834</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,503</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>929</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,533</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,630</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,402</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Components of net deferred tax assets</a></td>
<td class="text"><div style="line-height:120%;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The components of net deferred tax assets were as follows (in thousands):</span></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"/></tr><tr><td style="width:75%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue reserves</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>21,355</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>17,420</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Accruals and other liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,225</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,844</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,117</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Tax credits and net operating loss carryforwards</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,814</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,781</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Stock-based compensation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,981</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,975</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,068</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,087</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>62,560</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>42,107</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Valuation allowance</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(3,826</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(1,148</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Total deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>58,734</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>40,959</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Intangible assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>3,838</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,317</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Operating lease right-of-use assets</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,249</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>768</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>668</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total deferred tax liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,855</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,985</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net deferred tax assets</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>40,879</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>32,974</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock', window );">Schedule of adjustments to uncertain tax position</a></td>
<td class="text"><div style="line-height:120%;padding-top:10px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">A summary of the Company&#8217;s adjustments to its gross unrecognized tax benefits in the current year is as follows (in thousands):</span></div><div style="line-height:120%;padding-top:10px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:62%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>7,119</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>4,590</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>5,146</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase for tax positions related to the current year</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>770</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,891</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>580</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase for tax positions related to acquisition</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,493</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Increase (decrease) for tax positions related to prior years</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(768</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>407</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(523</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Decrease for settlements with applicable taxing authorities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(2,262</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Decrease for lapses of statute of limitations</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(613</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,121</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,119</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>4,590</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="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_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://fasb.org/us-gaap/role/ref/legacyRef<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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 income before income tax between domestic and foreign jurisdictions.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 change in unrecognized tax benefits.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 55<br> -Paragraph 217<br> -URI http://asc.fasb.org/extlink&amp;oid=117331294&amp;loc=d3e36027-109320<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock</td>
</tr>
<tr>
<td style="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>82
<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>83
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6815371808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment 1 (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Subtotal</a></td>
<td class="nump">$ 156,766<span></span>
</td>
<td class="nump">$ 122,190<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less: accumulated depreciation</a></td>
<td class="nump">80,778<span></span>
</td>
<td class="nump">65,164<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_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">75,988<span></span>
</td>
<td class="nump">57,026<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_CapitalizedComputerSoftwareNet', window );">Capitalized Computer Software, Net</a></td>
<td class="nump">6,800<span></span>
</td>
<td class="nump">4,700<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_Depreciation', window );">Depreciation</a></td>
<td class="nump">24,400<span></span>
</td>
<td class="nump">17,000<span></span>
</td>
<td class="nump">$ 12,300<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CapitalizedComputerSoftwareAmortization1', window );">Capitalized Computer Software, Amortization</a></td>
<td class="nump">1,500<span></span>
</td>
<td class="nump">1,200<span></span>
</td>
<td class="nump">$ 1,500<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember', window );">Computer and equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Subtotal</a></td>
<td class="nump">13,588<span></span>
</td>
<td class="nump">12,339<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Subtotal</a></td>
<td class="nump">6,494<span></span>
</td>
<td class="nump">5,231<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Machinery and tooling</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Subtotal</a></td>
<td class="nump">79,213<span></span>
</td>
<td class="nump">60,281<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember', window );">Leasehold improvements</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Subtotal</a></td>
<td class="nump">39,538<span></span>
</td>
<td class="nump">28,701<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember', window );">Business applications software</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentGross', window );">Subtotal</a></td>
<td class="nump">$ 17,933<span></span>
</td>
<td class="nump">$ 15,638<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-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_CapitalizedComputerSoftwareAmortization1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 expense for amortization of capitalized computer software costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128487-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_CapitalizedComputerSoftwareAmortization1</td>
</tr>
<tr>
<td style="padding-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_CapitalizedComputerSoftwareNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 carrying amount of capitalized computer software costs net of accumulated amortization 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<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_CapitalizedComputerSoftwareNet</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&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_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_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 depreciation, depletion and amortization of physical assets used in the normal conduct of business 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=119400593&amp;loc=d3e572229-122910<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember</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>84
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817665504">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued Expenses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_AccountsPayableCurrentAbstract', window );"><strong>Components of accrued expenses</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_StandardProductWarrantyAccrualCurrent', window );">Accrued warranty</a></td>
<td class="nump">$ 13,856<span></span>
</td>
<td class="nump">$ 11,964<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherEmployeeRelatedLiabilitiesCurrent', window );">Accrued other compensation</a></td>
<td class="nump">13,331<span></span>
</td>
<td class="nump">10,518<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccruedBonusesCurrent', window );">Accrued bonus</a></td>
<td class="nump">12,541<span></span>
</td>
<td class="nump">21,226<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_irbt_AccruedSalesTax', window );">Accrued sales and other indirect taxes payable</a></td>
<td class="nump">12,440<span></span>
</td>
<td class="nump">11,397<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_irbt_AccruedDirectFulfillmentCosts', window );">Accrued direct fulfillment costs</a></td>
<td class="nump">10,582<span></span>
</td>
<td class="nump">5,372<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current portion of operating lease liabilities</a></td>
<td class="nump">6,843<span></span>
</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_AccruedIncomeTaxesCurrent', window );">Accrued federal and state income taxes</a></td>
<td class="nump">3,378<span></span>
</td>
<td class="nump">1,936<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Accrued other</a></td>
<td class="nump">8,797<span></span>
</td>
<td class="nump">8,846<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_AccruedLiabilitiesCurrent', window );">Accrued expenses, total</a></td>
<td class="nump">$ 81,768<span></span>
</td>
<td class="nump">$ 71,259<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_AccruedDirectFulfillmentCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accrued direct fulfillment costs.</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;">irbt_AccruedDirectFulfillmentCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_AccruedSalesTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Accrued Sales Tax</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;">irbt_AccruedSalesTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_AccountsPayableCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AccountsPayableCurrentAbstract</td>
</tr>
<tr>
<td style="padding-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_AccruedBonusesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 for incentive compensation awarded to employees and directors or earned by them based on the terms of one or more relevant arrangements. 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://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6935-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6911-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_AccruedBonusesCurrent</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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=119400593&amp;loc=d3e572229-122910<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<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_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://fasb.org/us-gaap/role/ref/legacyRef<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_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-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_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 expenses incurred but not yet paid classified as other, 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>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&amp;loc=d3e7018-107765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=118951113&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_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-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_OtherEmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 obligations incurred for employer-related costs classified as other, payable 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://fasb.org/us-gaap/role/ref/legacyRef<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_OtherEmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-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_StandardProductWarrantyAccrualCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.</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_StandardProductWarrantyAccrualCurrent</td>
</tr>
<tr>
<td style="padding-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>85
<FILENAME>R69.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6838537680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_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_NotesReceivableFairValueDisclosure', window );">Convertible note</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 2,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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3', window );">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers out of Level 3</a></td>
<td class="num">(2,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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Recurring | Level 1</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_AvailableForSaleSecurities', window );">Corporate and government bonds, $17,016 at cost (3)</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_NotesReceivableFairValueDisclosure', window );">Convertible note</a></td>
<td class="text">&#160;<span></span>
</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_DerivativeAssets', window );">Derivative instruments (Note 11)</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_AssetsFairValueDisclosure', window );">Total assets measured at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">3,730<span></span>
</td>
</tr>
<tr class="ro">
<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_DerivativeLiabilities', window );">Derivative instruments (Note 11)</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_LiabilitiesFairValueDisclosure', window );">Total liabilities measured at fair 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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Recurring | Level 1 | Money market funds</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_CashAndCashEquivalentsFairValueDisclosure', window );">Money market funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,730<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Recurring | Level 2</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_AvailableForSaleSecurities', window );">Corporate and government bonds, $17,016 at cost (3)</a></td>
<td class="nump">17,032<span></span>
</td>
<td class="nump">29,605<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NotesReceivableFairValueDisclosure', window );">Convertible note</a></td>
<td class="text">&#160;<span></span>
</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_DerivativeAssets', window );">Derivative instruments (Note 11)</a></td>
<td class="nump">15,314<span></span>
</td>
<td class="nump">776<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_AssetsFairValueDisclosure', window );">Total assets measured at fair value</a></td>
<td class="nump">32,346<span></span>
</td>
<td class="nump">30,381<span></span>
</td>
</tr>
<tr class="ro">
<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_DerivativeLiabilities', window );">Derivative instruments (Note 11)</a></td>
<td class="nump">758<span></span>
</td>
<td class="nump">1,130<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_LiabilitiesFairValueDisclosure', window );">Total liabilities measured at fair value</a></td>
<td class="nump">758<span></span>
</td>
<td class="nump">1,130<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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Recurring | Level 2 | Money market funds</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_CashAndCashEquivalentsFairValueDisclosure', window );">Money market funds</a></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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Recurring | Level 3 (2)</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_AvailableForSaleSecurities', window );">Corporate and government bonds, $17,016 at cost (3)</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_NotesReceivableFairValueDisclosure', window );">Convertible note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,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_DerivativeAssets', window );">Derivative instruments (Note 11)</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_AssetsFairValueDisclosure', window );">Total assets measured at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">2,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_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_DerivativeLiabilities', window );">Derivative instruments (Note 11)</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_LiabilitiesFairValueDisclosure', window );">Total liabilities measured at fair 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_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember', window );">Recurring | Level 3 (2) | Money market funds</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_CashAndCashEquivalentsFairValueDisclosure', window );">Money market funds</a></td>
<td class="text">&#160;<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_AssetsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&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_AssetsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-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_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_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>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_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_CashAndCashEquivalentsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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.</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_CashAndCashEquivalentsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=99393222&amp;loc=SL20226008-175313<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13433-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=118260190&amp;loc=d3e13433-108611<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=99393222&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_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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 transfers of financial instrument classified as an asset out of level 3 of the fair value hierarchy.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3</td>
</tr>
<tr>
<td style="padding-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_LiabilitiesFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 and nonfinancial obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=117815213&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_LiabilitiesFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-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_NotesReceivableFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 an agreement for an unconditional promise by the maker to pay the holder a definite sum of money at a future date.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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(b))<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_NotesReceivableFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-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_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_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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember</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>86
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.19.3.a.u2</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>201</ContextCount>
  <ElementCount>486</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>60</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0001000 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/DocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>1001000 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>1001501 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>1002000 - Statement - Consolidated Statements of Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/ConsolidatedStatementsOfIncome</Role>
      <ShortName>Consolidated Statements of Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>1003000 - Statement - Consolidated Statement of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome</Role>
      <ShortName>Consolidated Statement of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>1004000 - Statement - Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>1005000 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>2101100 - Disclosure - Nature of the Business</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/NatureOfBusiness</Role>
      <ShortName>Nature of the Business</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>2102100 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>2103100 - Disclosure - Revenue Recognition (Notes)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.irobot.com/role/RevenueRecognitionNotes</Role>
      <ShortName>Revenue Recognition (Notes)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>2104100 - Disclosure - Leases (Notes)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.irobot.com/role/LeasesNotes</Role>
      <ShortName>Leases (Notes)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>2105100 - Disclosure - Business Combinations (Notes)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.irobot.com/role/BusinessCombinationsNotes</Role>
      <ShortName>Business Combinations (Notes)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>2107100 - Disclosure - Inventory</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/Inventory</Role>
      <ShortName>Inventory</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>2108100 - Disclosure - Property and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/PropertyAndEquipment</Role>
      <ShortName>Property and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>2111100 - Disclosure - Goodwill and other intangible assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets</Role>
      <ShortName>Goodwill and other intangible assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>2112100 - Disclosure - Accrued Expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/AccruedExpenses</Role>
      <ShortName>Accrued Expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>2114100 - Disclosure - Working Capital Facilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/WorkingCapitalFacilities</Role>
      <ShortName>Working Capital Facilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>2115100 - Disclosure - Derivative Instruments and Hedging Activities (Notes)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes</Role>
      <ShortName>Derivative Instruments and Hedging Activities (Notes)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>2116100 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>2119100 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>2120100 - Disclosure - Stock-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensation</Role>
      <ShortName>Stock-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>2121100 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>2124100 - Disclosure - Employee Benefits (Notes)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://www.irobot.com/role/EmployeeBenefitsNotes</Role>
      <ShortName>Employee Benefits (Notes)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>2125100 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>2126100 - Disclosure - Industry Segment, Geographic Information and Significant Customers</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers</Role>
      <ShortName>Industry Segment, Geographic Information and Significant Customers</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>2127100 - Disclosure - Quarterly Information (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/QuarterlyInformationUnaudited</Role>
      <ShortName>Quarterly Information (Unaudited)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>2202201 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>2302302 - Disclosure - Summary of Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables</Role>
      <ShortName>Summary of Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>2303303 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/RevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/RevenueRecognitionNotes</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>2303305 - Disclosure - Revenue Recognition Contract balances (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/RevenueRecognitionContractBalancesTables</Role>
      <ShortName>Revenue Recognition Contract balances (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>2304301 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/LeasesNotes</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>2305301 - Disclosure - Business Combinations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/BusinessCombinationsTables</Role>
      <ShortName>Business Combinations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/BusinessCombinationsNotes</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>2307301 - Disclosure - Inventory (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/InventoryTables</Role>
      <ShortName>Inventory (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/Inventory</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>2308301 - Disclosure - Property and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/PropertyAndEquipmentTables</Role>
      <ShortName>Property and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/PropertyAndEquipment</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>2311301 - Disclosure - Goodwill and other intangible assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables</Role>
      <ShortName>Goodwill and other intangible assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>2312301 - Disclosure - Accrued Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/AccruedExpensesTables</Role>
      <ShortName>Accrued Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/AccruedExpenses</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>2315301 - Disclosure - Derivative Instruments and Hedging Activities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables</Role>
      <ShortName>Derivative Instruments and Hedging Activities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>2316301 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/FairValueMeasurements</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>2316302 - Disclosure - Fair Value Measurements Convertible Note (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables</Role>
      <ShortName>Fair Value Measurements Convertible Note (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>2320301 - Disclosure - Stock-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensationTables</Role>
      <ShortName>Stock-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/StockBasedCompensation</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>2321301 - Disclosure - Commitments and Contingencies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/CommitmentsAndContingenciesTables</Role>
      <ShortName>Commitments and Contingencies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/CommitmentsAndContingencies</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>2325301 - Disclosure - Income Taxes (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxesTables</Role>
      <ShortName>Income Taxes (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/IncomeTaxes</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>2326301 - Disclosure - Industry Segment, Geographic Information and Significant Customers Revenue by geography (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables</Role>
      <ShortName>Industry Segment, Geographic Information and Significant Customers Revenue by geography (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>2327301 - Disclosure - Quarterly Information (Unaudited) (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/QuarterlyInformationUnauditedTables</Role>
      <ShortName>Quarterly Information (Unaudited) (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.irobot.com/role/QuarterlyInformationUnaudited</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>2402403 - Disclosure - - Short Term Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/ShortTermInvestmentsDetails</Role>
      <ShortName>- Short Term Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>2402404 - Disclosure - - Accounts Receivable Allowances (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/AccountsReceivableAllowancesDetails</Role>
      <ShortName>- Accounts Receivable Allowances (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>2402405 - Disclosure - - Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/PropertyAndEquipmentDetails</Role>
      <ShortName>- Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>2402406 - Disclosure - Summary of Significant Accounting Policies Other assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails</Role>
      <ShortName>Summary of Significant Accounting Policies Other assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>2402407 - Disclosure - Summary of Significant Accounting Policies Income taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails</Role>
      <ShortName>Summary of Significant Accounting Policies Income taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>2402408 - Disclosure - - Net Income Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/NetIncomePerShareDetails</Role>
      <ShortName>- Net Income Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>2402409 - Disclosure - Summary of Significant Accounting Policies - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails</Role>
      <ShortName>Summary of Significant Accounting Policies - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>2403406 - Disclosure - Revenue Recognition Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails</Role>
      <ShortName>Revenue Recognition Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>2403407 - Disclosure - Revenue Recognition Contract Balances (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails</Role>
      <ShortName>Revenue Recognition Contract Balances (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>2403408 - Disclosure - Revenue Recognition Significant Judgments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails</Role>
      <ShortName>Revenue Recognition Significant Judgments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>2404403 - Disclosure - Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/LeasesDetails</Role>
      <ShortName>Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/LeasesTables</ParentRole>
      <Position>55</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>2404404 - Disclosure - Leases Maturity of Operating Lease Liability (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails</Role>
      <ShortName>Leases Maturity of Operating Lease Liability (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>2405402 - Disclosure - Business Combinations - Robopolis Acquisition (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails</Role>
      <ShortName>Business Combinations - Robopolis Acquisition (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>2405403 - Disclosure - Business Combinations - Sales On Demand Corporation Acquisition (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails</Role>
      <ShortName>Business Combinations - Sales On Demand Corporation Acquisition (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>2405404 - Disclosure - Business Combinations - Pro Forma (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/BusinessCombinationsProFormaDetails</Role>
      <ShortName>Business Combinations - Pro Forma (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>2407402 - Disclosure - Inventory (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/InventoryDetails</Role>
      <ShortName>Inventory (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/InventoryTables</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>2408402 - Disclosure - Property and Equipment 1 (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/PropertyAndEquipment1Details</Role>
      <ShortName>Property and Equipment 1 (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/PropertyAndEquipmentTables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>2411402 - Disclosure - Goodwill and other intangible assets - Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails</Role>
      <ShortName>Goodwill and other intangible assets - Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>2411403 - Disclosure - Goodwill and other intangible assets - Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails</Role>
      <ShortName>Goodwill and other intangible assets - Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>2411404 - Disclosure - Goodwill and other intangible assets - Future Amortization Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails</Role>
      <ShortName>Goodwill and other intangible assets - Future Amortization Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>2412402 - Disclosure - Accrued Expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/AccruedExpensesDetails</Role>
      <ShortName>Accrued Expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/AccruedExpensesTables</ParentRole>
      <Position>65</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>2414401 - Disclosure - Working Capital Facilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/WorkingCapitalFacilitiesDetails</Role>
      <ShortName>Working Capital Facilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/WorkingCapitalFacilities</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>2415402 - Disclosure - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails</Role>
      <ShortName>Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>2415403 - Disclosure - Derivative Instruments and Hedging Activities - Gain (Loss) on Derivatives (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails</Role>
      <ShortName>Derivative Instruments and Hedging Activities - Gain (Loss) on Derivatives (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>2416403 - Disclosure - Fair Value Measurements (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/FairValueMeasurementsDetails</Role>
      <ShortName>Fair Value Measurements (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/FairValueMeasurementsTables</ParentRole>
      <Position>69</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>2419401 - Disclosure - Stockholders' Equity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockholdersEquityDetails</Role>
      <ShortName>Stockholders' Equity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/StockholdersEquity</ParentRole>
      <Position>70</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>2420402 - Disclosure - Stock-Based Compensation - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensationNarrativeDetails</Role>
      <ShortName>Stock-Based Compensation - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>2420403 - Disclosure - Stock-Based Compensation - Stock Options Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails</Role>
      <ShortName>Stock-Based Compensation - Stock Options Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>72</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>2420404 - Disclosure - Stock-Based Compensation - Stock Options Assumptions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails</Role>
      <ShortName>Stock-Based Compensation - Stock Options Assumptions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>73</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>2420406 - Disclosure - Stock-Based Compensation - RSUs and PSUs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails</Role>
      <ShortName>Stock-Based Compensation - RSUs and PSUs (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>2420407 - Disclosure - Stock-Based Compensation - ESPP (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensationEsppDetails</Role>
      <ShortName>Stock-Based Compensation - ESPP (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>2420408 - Disclosure - Stock-Based Compensation Stock comp expense classification (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails</Role>
      <ShortName>Stock-Based Compensation Stock comp expense classification (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>76</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>2421402 - Disclosure - Commitments and Contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/CommitmentsAndContingenciesDetails</Role>
      <ShortName>Commitments and Contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/CommitmentsAndContingenciesTables</ParentRole>
      <Position>77</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>2421403 - Disclosure - Commitments and Contingencies (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/CommitmentsAndContingenciesDetails1</Role>
      <ShortName>Commitments and Contingencies (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/CommitmentsAndContingenciesTables</ParentRole>
      <Position>78</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>2424401 - Disclosure - Employee Benefits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/EmployeeBenefitsDetails</Role>
      <ShortName>Employee Benefits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/EmployeeBenefitsNotes</ParentRole>
      <Position>79</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>2425402 - Disclosure - Income Taxes - Income (Loss) Before Provision For Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails</Role>
      <ShortName>Income Taxes - Income (Loss) Before Provision For Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>80</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>2425403 - Disclosure - Income Taxes - Components of Income Tax Expense (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails</Role>
      <ShortName>Income Taxes - Components of Income Tax Expense (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>81</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>2425404 - Disclosure - Income Taxes - Effective Income Tax Reconciliation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails</Role>
      <ShortName>Income Taxes - Effective Income Tax Reconciliation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>82</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>2425405 - Disclosure - Income Taxes - Net Deferred Tax Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails</Role>
      <ShortName>Income Taxes - Net Deferred Tax Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>83</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>2425406 - Disclosure - Income Taxes - Unrecognized Tax Benefits (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails</Role>
      <ShortName>Income Taxes - Unrecognized Tax Benefits (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>84</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>2425407 - Disclosure - Income Taxes - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IncomeTaxesNarrativeDetails</Role>
      <ShortName>Income Taxes - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>85</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>2426402 - Disclosure - Industry Segment, Geographic Information and Significant Customers (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual</Role>
      <ShortName>Industry Segment, Geographic Information and Significant Customers (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>2427402 - Disclosure - Quarterly Information (Unaudited) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/QuarterlyInformationUnauditedDetails</Role>
      <ShortName>Quarterly Information (Unaudited) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.irobot.com/role/QuarterlyInformationUnauditedTables</ParentRole>
      <Position>87</Position>
    </Report>
    <Report instance="irbt-12282019x10k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>2429400 - Schedule - Maturity of Operating Lease Liability (Details) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails</Role>
      <ShortName>Maturity of Operating Lease Liability (Details) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>88</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" original="irbt-12282019x10k.htm">irbt-12282019x10k.htm</File>
    <File>irbt-12282019x10kex211.htm</File>
    <File>irbt-12282019x10kex231.htm</File>
    <File>irbt-12282019x10kex311.htm</File>
    <File>irbt-12282019x10kex312.htm</File>
    <File>irbt-12282019x10kex321.htm</File>
    <File>irbt-12282019x10kex42.htm</File>
    <File>irbt-20191228.xsd</File>
    <File>irbt-20191228_cal.xml</File>
    <File>irbt-20191228_def.xml</File>
    <File>irbt-20191228_lab.xml</File>
    <File>irbt-20191228_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://xbrl.sec.gov/country/2017-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/us-gaap/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2019-01-31</BaseTaxonomy>
    <BaseTaxonomy>http://fasb.org/srt/2019-01-31</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>87
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822887776">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies 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_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">15.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Commitments and Contingencies</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Legal Proceedings</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">From time to time and in the ordinary course of business, the Company is subject to various claims, charges and litigation. The outcome of litigation cannot be predicted with certainty and some lawsuits, claims or proceedings may be disposed of unfavorably to us, which could materially affect our financial condition or results of operations. For the following litigation matters, a liability is not probable or the amount cannot be reasonably estimated and therefore accruals have not been made.</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On October 24, 2019, purported Company shareholder Miramar Firefighters&#8217; Pension Fund filed a putative class action in the U.S. District Court for the Southern District of New York against the Company and certain of its directors and officers, captioned&#160;Miramar Firefighters&#8217; Pension Fund v. iRobot Corporation, et al., No. 1:19-cv-09837.&#160; The complaint alleges violations of Sections 10(b) and 20(a) of the Securities Exchange Act of 1934, as amended (the "Exchange Act") and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts. A similar case captioned Campbell v. iRobot Corporation, et al., No. 1:19-cv-12483 was also filed in the U.S. District Court for the Southern District of New York and subsequently transferred to the </span></div><div style="line-height:120%;padding-top:12px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">U.S. District Court for the District of Massachusetts. On January 24, 2020, the Court consolidated the Miramar and Campbell cases and appointed a lead plaintiff and lead plaintiff's Counsel.&#160; </span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On December 20, 2019, purported Company shareholders David Katz and Thomas Wightman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for Southern District of New York against the Company and certain of its directors and officers, captioned&#160;David Katz and Thomas Wightman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:19-cv-11692. The complaint alleges breaches of fiduciary duties, unjust enrichment,&#160; violations of Sections 10(b) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief. This case has been transferred to the U.S. District Court for the District of Massachusetts.</span></div><div style="line-height:120%;padding-top:12px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On January 9, 2020, purported Company shareholder Robert Truman, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Robert Truman, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10034. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:8px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On January 22, 2020, purported Company shareholder Alexa Ruhfass, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;Alexa Ruhfass, on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10133. The complaint alleges breaches of fiduciary duties, unjust enrichment, waste of corporate assets, and violations of Sections 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:8px;text-align:left;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">On February 10, 2020, purported Company shareholder William Tasco, derivatively on behalf of iRobot Corporation, filed a complaint in the U.S. District Court for the District of Massachusetts against the Company and certain of its directors and officers, captioned&#160;William Tasco, derivatively on behalf of iRobot Corporation&#160; v. iRobot Corporation, et al., No. 1:20-cv-10253. The complaint alleges breaches of fiduciary duties, unjust enrichment, abuse of control, gross mismanagement, waste of corporate assets, and violations of Sections 10(b), 14(a) and 20(a) of the Exchange Act and Rule 10b-5 thereunder based on allegedly false and misleading statements and omissions concerning the Company&#8217;s&#160;acquisitions of Sales&#160;on Demand Corporation and Robopolis SAS and the Company&#8217;s subsequent financial performance.&#160; The complaint seeks, among other things, unspecified compensatory damages, including interest, in connection with the Company&#8217;s allegedly inflated stock price, attorneys&#8217; fees and costs, and unspecified equitable/injunctive relief.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Outstanding Purchase Orders</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">At </span><span style="font-family:Times New Roman;font-size:10pt;color:#000000;font-style:normal;font-weight:normal;text-decoration:none;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, we had outstanding purchase orders aggregating approximately </span><span style="font-family:inherit;font-size:10pt;"><span>$124.4 million</span></span><span style="font-family:inherit;font-size:10pt;">. The purchase orders, the majority of which are with our contract manufacturers for the purchase of inventory in the normal course of business, are for manufacturing and non-manufacturing related goods and services, and are generally cancelable without penalty.&#160; In circumstances where we determine that we have financial exposure associated with any of these commitments, we record a liability in the period in which that exposure is identified.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Guarantees and Indemnification Obligations</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company enters into standard indemnification agreements in the ordinary course of business. Pursuant to these agreements, the Company indemnifies and agrees to reimburse the indemnified party for losses incurred by the indemnified party, generally the Company&#8217;s customers, in connection with any patent, copyright, trade secret or other proprietary right infringement claim by any third party. The term of these indemnification agreements is generally perpetual any time after execution of the agreement. The maximum potential amount of future payments the Company could be required to make under these indemnification agreements is unlimited. The Company has never incurred costs to defend lawsuits or settle claims related to these indemnification agreements. As a result, the Company believes the estimated fair value of these agreements is minimal. Accordingly, the Company has no liabilities recorded for these agreements as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><div style="line-height:120%;padding-top:12px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Warranty</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company provides warranties on most products and has established a reserve for warranty obligations based on estimated warranty costs. The reserve is included as part of accrued expenses (Note&#160;9)&#160;in the accompanying consolidated balance sheets.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Activity related to the warranty accrual was as follows (in thousands):</span></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="12"/></tr><tr><td style="width:59%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Year Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;30, <br/>2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at beginning of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>11,964</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>11,264</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>8,464</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Liability assumed (1)</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>2,186</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Provision</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>14,091</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,798</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>8,591</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Warranty usage</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(12,199</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(10,098</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>(7,977</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></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;"><span style="font-family:inherit;font-size:10pt;">Balance at end of period</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>13,856</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,964</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>11,264</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;__________________________________</span></div><div style="line-height:120%;font-size:10pt;padding-left:0px;"><span style="font-family:inherit;font-size:10pt;">(1) </span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Warranty assumed as part of the acquisition of the iRobot-related distribution business of SODC.</span></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_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI http://asc.fasb.org/topic&amp;trid=2144648<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>88
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813661184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Quarterly Information (Unaudited)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_QuarterlyFinancialInformationDisclosureAbstract', window );"><strong>Quarterly Financial Information 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_QuarterlyFinancialInformationTextBlock', window );">Quarterly Information (Unaudited)</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">19.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Quarterly Information (Unaudited)</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following information has been derived from unaudited consolidated financial statements that, in the opinion of management, include all recurring adjustments necessary for a fair statement of such information (in thousands, except per share amounts):</span></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="32"/></tr><tr><td style="width:11%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:7%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:8%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></div></td><td colspan="31" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal Quarter Ended</span></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;"><span style="font-family:inherit;font-size:8pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">September&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">June&#160;29, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">March&#160;30, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">September&#160;29, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">June&#160;30, <br/>2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">March&#160;31, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>426,778</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>289,399</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>260,172</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>237,661</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>384,665</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>264,534</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>226,317</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>217,068</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Gross profit</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>169,370</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>136,841</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>118,170</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>119,546</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>186,511</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>135,206</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>117,926</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>115,785</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Net income</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,041</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>35,532</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>7,207</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>22,520</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>25,191</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>31,929</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>10,471</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>20,401</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Diluted earnings per share</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.70</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.24</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.25</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.78</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.88</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1.12</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.37</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>0.71</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_QuarterlyFinancialInformationDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_QuarterlyFinancialInformationDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_QuarterlyFinancialInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -URI http://asc.fasb.org/topic&amp;trid=2126967<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_QuarterlyFinancialInformationTextBlock</td>
</tr>
<tr>
<td style="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>89
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6818851856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>- Property and Equipment (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember', window );">Leasehold improvements</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [Line Items]</strong></a></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_irbt_LeaseholdImprovementsTerms', window );">Capital Leases and Leasehold Improvements Terms</a></td>
<td class="text">Lesser of economic benefit period or term&#160;of&#160;lease<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and fixtures</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">5 years<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_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Computer and equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">2 years<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_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Machinery and tooling</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">2 years<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_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Tooling</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">2 years<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_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Business applications software</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">3 years<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Computer and equipment</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">5 years<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Machinery and tooling</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">5 years<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Tooling</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">5 years<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Business applications software</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_PropertyPlantAndEquipmentLineItems', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">7 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_LeaseholdImprovementsTerms">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Leasehold improvements terms.</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;">irbt_LeaseholdImprovementsTerms</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_PropertyPlantAndEquipmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_PropertyPlantAndEquipmentLineItems</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</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_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdsAndLeaseholdImprovementsMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember</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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MinimumMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ToolsDiesAndMoldsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ToolsDiesAndMoldsMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember</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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MaximumMember</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>90
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813713312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Industry Segment, Geographic Information and Significant Customers Revenue by geography (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_irbt_ScheduleofrevenuebygeographyLineItems', window );"><strong>Schedule of revenue by geography [Line Items]</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_irbt_ScheduleofrevenuebygeographyTableTextBlock', window );">Schedule of revenue by geography [Table Text Block]</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about revenue by geographical region (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:41%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 30, 2017</span></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;"><span style="font-family:inherit;font-size:10pt;">Domestic</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>603,618</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>560,995</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>452,563</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">International</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>610,392</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>531,589</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>431,348</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,214,010</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,092,584</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>883,911</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_ScheduleofrevenuebygeographyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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] for Schedule of revenue by geography [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;">irbt_ScheduleofrevenuebygeographyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_ScheduleofrevenuebygeographyTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>[Table Text Block] for Schedule of revenue by geography [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;">irbt_ScheduleofrevenuebygeographyTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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>91
<FILENAME>R68.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6824853520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments and Hedging Activities - Gain (Loss) on Derivatives (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Sep. 28, 2019</div></th>
<th class="th"><div>Jun. 29, 2019</div></th>
<th class="th"><div>Mar. 30, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Sep. 29, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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>
<td class="text">&#160;<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_Revenues', window );">Revenue</a></td>
<td class="nump">$ 426,778<span></span>
</td>
<td class="nump">$ 289,399<span></span>
</td>
<td class="nump">$ 260,172<span></span>
</td>
<td class="nump">$ 237,661<span></span>
</td>
<td class="nump">$ 384,665<span></span>
</td>
<td class="nump">$ 264,534<span></span>
</td>
<td class="nump">$ 226,317<span></span>
</td>
<td class="nump">$ 217,068<span></span>
</td>
<td class="nump">$ 1,214,010<span></span>
</td>
<td class="nump">$ 1,092,584<span></span>
</td>
<td class="nump">$ 883,911<span></span>
</td>
</tr>
<tr class="re">
<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 Goods and Services Sold</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="nump">670,083<span></span>
</td>
<td class="nump">537,156<span></span>
</td>
<td class="nump">$ 450,752<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_OtherNonoperatingIncomeExpenseMember', window );">Other income, net</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>
</tr>
<tr class="re">
<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>
<td class="text">&#160;<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_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet', window );">Gain (loss) recognized in income</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="nump">89<span></span>
</td>
<td class="nump">1,568<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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember', window );">Foreign currency forward contracts | Cash flow hedge</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>
</tr>
<tr class="ro">
<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>
<td class="text">&#160;<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_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax', window );">Effective portion, Gain (loss) recognized in OCI on Derivative</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="nump">16,483<span></span>
</td>
<td class="num">(686)<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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember', window );">Foreign currency forward contracts | Revenue | Cash flow hedge</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>
</tr>
<tr class="re">
<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>
<td class="text">&#160;<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_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet', window );">Effective portion, Gain (loss) reclassified from accumulated OCI into income</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="nump">1,889<span></span>
</td>
<td class="nump">948<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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember', window );">Foreign currency forward contracts | Cost of revenue | Cash flow hedge</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>
</tr>
<tr class="ro">
<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>
<td class="text">&#160;<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_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet', window );">Effective portion, Gain (loss) reclassified from accumulated OCI into income</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="nump">$ 0<span></span>
</td>
<td class="num">$ (386)<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_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember', window );">Derivatives designated as cash flow hedges: | Maximum | Cash flow hedge</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>
</tr>
<tr class="re">
<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>
<td class="text">&#160;<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_DerivativeTermOfContract', window );">Derivative, Term of Contract</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">37 months<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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_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://fasb.org/us-gaap/role/ref/legacyRef<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=109980867&amp;loc=SL5624177-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=109980867&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_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_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 realized and unrealized gain (loss) of derivative instruments not designated or 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4CC<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL109998890-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&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_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet</td>
</tr>
<tr>
<td style="padding-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_DerivativeTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the derivative contract is 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>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_DerivativeTermOfContract</td>
</tr>
<tr>
<td style="padding-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_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 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://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&amp;loc=d3e637-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=109978405&amp;loc=d3e80720-113993<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118930883&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_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax</td>
</tr>
<tr>
<td style="padding-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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-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_IncomeStatementLocationAxis=us-gaap_OtherNonoperatingIncomeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OtherNonoperatingIncomeExpenseMember</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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember</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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=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_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=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_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_SalesRevenueNetMember</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_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CostOfSalesMember</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_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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MaximumMember</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>92
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6823031248">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventory (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_InventoryNetAbstract', window );"><strong>Inventory</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">$ 2,825<span></span>
</td>
<td class="nump">$ 2,992<span></span>
</td>
</tr>
<tr class="re">
<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">154,522<span></span>
</td>
<td class="nump">161,641<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_InventoryNet', window );">Total</a></td>
<td class="nump">$ 157,347<span></span>
</td>
<td class="nump">$ 164,633<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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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://fasb.org/us-gaap/role/ref/legacyRef<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=118951113&amp;loc=d3e6676-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=116846819&amp;loc=d3e3927-108312<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_InventoryNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_InventoryNetAbstract</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>93
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6815126688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill and other intangible assets - Future Amortization Expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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>
<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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</a></td>
<td class="nump">$ 2,140<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Two</a></td>
<td class="nump">1,921<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Three</a></td>
<td class="nump">1,696<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Four</a></td>
<td class="nump">1,021<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Five</a></td>
<td class="nump">841<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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</a></td>
<td class="nump">4,733<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_irbt_Finitelivedintangibleassetsfutureamortizationtotal', window );">Finite-lived intangible assets, future amortization total</a></td>
<td class="nump">12,352<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_AmortizationOfIntangibleAssets', window );">Amortization of intangible assets</a></td>
<td class="nump">12,800<span></span>
</td>
<td class="nump">$ 19,600<span></span>
</td>
<td class="nump">$ 13,100<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_CostOfSalesMember', 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>
</tr>
<tr class="re">
<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>
<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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</a></td>
<td class="nump">1,140<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Two</a></td>
<td class="nump">1,140<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Three</a></td>
<td class="nump">915<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Four</a></td>
<td class="nump">240<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Five</a></td>
<td class="nump">60<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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</a></td>
<td class="nump">0<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_irbt_Finitelivedintangibleassetsfutureamortizationtotal', window );">Finite-lived intangible assets, future amortization total</a></td>
<td class="nump">3,495<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_IncomeStatementLocationAxis=us-gaap_OperatingExpenseMember', window );">Operating Expense [Member]</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_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>
<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 );">Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months</a></td>
<td class="nump">1,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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Two</a></td>
<td class="nump">781<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Three</a></td>
<td class="nump">781<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Four</a></td>
<td class="nump">781<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Finite-Lived Intangible Assets, Amortization Expense, Year Five</a></td>
<td class="nump">781<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_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Finite-Lived Intangible Assets, Amortization Expense, after Year Five</a></td>
<td class="nump">4,733<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_irbt_Finitelivedintangibleassetsfutureamortizationtotal', window );">Finite-lived intangible assets, future amortization total</a></td>
<td class="nump">$ 8,857<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_irbt_Finitelivedintangibleassetsfutureamortizationtotal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Finite-lived intangible assets, future amortization 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;">irbt_Finitelivedintangibleassetsfutureamortizationtotal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_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://fasb.org/us-gaap/role/ref/legacyRef<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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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_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_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CostOfSalesMember</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_OperatingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OperatingExpenseMember</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>94
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836918048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition Disaggregation of Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="8">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Sep. 28, 2019</div></th>
<th class="th"><div>Jun. 29, 2019</div></th>
<th class="th"><div>Mar. 30, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Sep. 29, 2018</div></th>
<th class="th"><div>Jun. 30, 2018</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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>
<td class="text">&#160;<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_Revenues', window );">Revenues</a></td>
<td class="nump">$ 426,778<span></span>
</td>
<td class="nump">$ 289,399<span></span>
</td>
<td class="nump">$ 260,172<span></span>
</td>
<td class="nump">$ 237,661<span></span>
</td>
<td class="nump">$ 384,665<span></span>
</td>
<td class="nump">$ 264,534<span></span>
</td>
<td class="nump">$ 226,317<span></span>
</td>
<td class="nump">$ 217,068<span></span>
</td>
<td class="nump">$ 1,214,010<span></span>
</td>
<td class="nump">$ 1,092,584<span></span>
</td>
<td class="nump">$ 883,911<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_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</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>
</tr>
<tr class="ro">
<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>
<td class="text">&#160;<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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from Contract with Customer, Excluding Assessed 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>
<td class="text">&#160;<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">603,618<span></span>
</td>
<td class="nump">560,995<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_srt_StatementGeographicalAxis=us-gaap_EMEAMember', window );">EMEA [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>
<td class="text">&#160;<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_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>
<td class="text">&#160;<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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from Contract with Customer, Excluding Assessed 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>
<td class="text">&#160;<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">357,760<span></span>
</td>
<td class="nump">311,659<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_srt_StatementGeographicalAxis=irbt_AllOtherRegionsMember', window );">All Other Regions [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>
<td class="text">&#160;<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_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>
<td class="text">&#160;<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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue from Contract with Customer, Excluding Assessed 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>
<td class="text">&#160;<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">$ 252,632<span></span>
</td>
<td class="nump">$ 219,930<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_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/disclosureRef<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=118956577&amp;loc=SL49130543-203045<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=118956577&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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-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_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=country_US</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_srt_StatementGeographicalAxis=us-gaap_EMEAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=us-gaap_EMEAMember</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_srt_StatementGeographicalAxis=irbt_AllOtherRegionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=irbt_AllOtherRegionsMember</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>95
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6816227648">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases Maturity of Operating Lease Liability (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_LeasesAbstract', window );"><strong>Leases [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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months</a></td>
<td class="nump">$ 8,936<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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">Lessee, Operating Lease, Liability, Payments, Due Year Two</a></td>
<td class="nump">8,263<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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">Lessee, Operating Lease, Liability, Payments, Due Year Three</a></td>
<td class="nump">7,592<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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">Lessee, Operating Lease, Liability, Payments, Due Year Four</a></td>
<td class="nump">7,145<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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">Lessee, Operating Lease, Liability, Payments, Due Year Five</a></td>
<td class="nump">6,308<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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Lessee, Operating Lease, Liability, Payments, Due after Year Five</a></td>
<td class="nump">34,957<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_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Lessee, Operating Lease, Liability, Payments, Due</a></td>
<td class="nump">73,201<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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</a></td>
<td class="nump">11,430<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_OperatingLeaseLiability', window );">Operating Lease, Liability</a></td>
<td class="nump">61,771<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_OperatingLeaseLiabilityCurrent', window );">Current portion of operating lease liabilities</a></td>
<td class="nump">6,843<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_OperatingLeaseLiabilityNoncurrent', window );">Operating Lease, Liability, Noncurrent</a></td>
<td class="nump">$ 54,928<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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease, due after fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease, due in next fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease, due in fourth fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease, due in third fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments for operating lease, due in second fiscal year following latest fiscal year.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=77888426&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=77888419&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-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>96
<FILENAME>R85.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6815181200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Narrative (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 30, 2017</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 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_TaxCreditCarryforwardLineItems', window );"><strong>Tax Credit Carryforward [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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit', window );">Tax Cuts and Jobs Act of 2017, income tax expense (benefit)</a></td>
<td class="nump">$ 11,900,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_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit', window );">Tax Cuts and Jobs Act of 2017, income tax expense (benefit), remeasurement of certain deferred tax assets and liabilities</a></td>
<td class="nump">8,900,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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit', window );">Tax Cuts and Jobs Act of 2017, income tax expense (benefit), transition tax fior accumulated foreign earnings</a></td>
<td class="nump">3,000,000.0<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_OperatingLossCarryforwards', window );">Operating loss carryforwards</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,800,000<span></span>
</td>
<td class="nump">$ 3,400,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_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">800,000<span></span>
</td>
<td class="nump">3,826,000<span></span>
</td>
<td class="nump">1,148,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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued', window );">Income tax penalties and interest accrued</a></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="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate', window );">Unrecognized tax benefits that would impact effective tax rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,400,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_IncomeTaxAuthorityAxis=us-gaap_StateAndLocalJurisdictionMember', window );">State and Local Jurisdiction</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_TaxCreditCarryforwardLineItems', window );"><strong>Tax Credit Carryforward [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_TaxCreditCarryforwardAmount', window );">Tax credit carryforward</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,100,000<span></span>
</td>
<td class="nump">$ 10,700,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Cuts and Jobs Act of 2017, Provisional Income Tax Expense (Benefit)</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;">irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 Cuts and Jobs Act of 2017, Transition Tax for Accumulated Foreign Earnings, Provisional Income Tax Expense (Benefit)</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;">irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32537-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_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-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_OperatingLossCarryforwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32559-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_OperatingLossCarryforwards</td>
</tr>
<tr>
<td style="padding-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_TaxCreditCarryforwardAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 the tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32559-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_TaxCreditCarryforwardAmount</td>
</tr>
<tr>
<td style="padding-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_TaxCreditCarryforwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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_TaxCreditCarryforwardLineItems</td>
</tr>
<tr>
<td style="padding-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_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 tax expense (benefit) for remeasurement of deferred tax from change in tax rate pursuant to Tax Cuts and Jobs Act.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-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_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 unrecognized tax benefits that, if recognized, would affect the effective tax rate.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15A<br> -Subparagraph (b)<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_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate</td>
</tr>
<tr>
<td style="padding-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_StateAndLocalJurisdictionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_StateAndLocalJurisdictionMember</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>97
<FILENAME>R75.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6816909664">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation - ESPP (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>May 31, 2017</div></th>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 2017</div></th>
<th class="th"><div>May 23, 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_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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance', window );">Capital shares reserved for future issuance</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">1,750,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate', window );">Maximum percentage of salary</a></td>
<td class="nump">15.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="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_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount', window );">Maximum dollar amount</a></td>
<td class="nump">$ 4,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="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee', window );">Maximum number of shares per employee</a></td>
<td class="nump">1,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="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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of shares available for grant</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,293,482<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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent', window );">Purchase price of common stock percent</a></td>
<td class="nump">85.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="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_EmployeeStockMember', window );">Employee Stock</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="re">
<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>
</tr>
<tr class="ro">
<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 );">Number of shares available for grant</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">570,962<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_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1', window );">Share-based Payment Arrangement, Expensed and Capitalized, Amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,100,000<span></span>
</td>
<td class="nump">$ 1,000,000.0<span></span>
</td>
<td class="nump">$ 100,000<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_irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Maximum 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;">irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-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_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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 highest percentage of annual salary that an employee is permitted to utilize with respect to the plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate</td>
</tr>
<tr>
<td style="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>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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 highest quantity of shares an employee can purchase under the plan per period.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost expensed and capitalized for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1</td>
</tr>
<tr>
<td style="padding-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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Purchase price of common stock expressed as a percentage of its 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_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent</td>
</tr>
<tr>
<td style="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_AwardTypeAxis=us-gaap_EmployeeStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_EmployeeStockMember</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>98
<FILENAME>R71.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6815673712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation - Narrative (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Dec. 28, 2019 </div>
<div>USD ($) </div>
<div>plan </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 29, 2018 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 30, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>May 23, 2018 </div>
<div>shares</div>
</th>
</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_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans', window );">Number of plans | plan</a></td>
<td class="nump">3<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_CommonStockCapitalSharesReservedForFutureIssuance', window );">Capital shares reserved for future issuance</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,750,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Number of shares available for grant</a></td>
<td class="nump">1,293,482<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 );">Share-based Payment Arrangement, Expense | $</a></td>
<td class="nump">$ 23,744<span></span>
</td>
<td class="nump">$ 25,804<span></span>
</td>
<td class="nump">$ 19,751<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_irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, Number Of Plans</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;">irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_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>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=115993241&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 number of common shares reserved for future issuance.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=116856206&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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<FILENAME>R81.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6817405264">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes - Components of Income Tax Expense (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Current</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_CurrentFederalTaxExpenseBenefit', window );">Federal</a></td>
<td class="nump">$ 13,366<span></span>
</td>
<td class="nump">$ 17,627<span></span>
</td>
<td class="nump">$ 17,555<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentStateAndLocalTaxExpenseBenefit', window );">State</a></td>
<td class="nump">5,004<span></span>
</td>
<td class="nump">3,676<span></span>
</td>
<td class="nump">1,691<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentForeignTaxExpenseBenefit', window );">Foreign</a></td>
<td class="nump">6,941<span></span>
</td>
<td class="nump">10,732<span></span>
</td>
<td class="nump">7,355<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_CurrentIncomeTaxExpenseBenefit', window );">Total current income tax provision</a></td>
<td class="nump">25,311<span></span>
</td>
<td class="nump">32,035<span></span>
</td>
<td class="nump">26,601<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract', window );"><strong>Deferred</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_DeferredFederalIncomeTaxExpenseBenefit', window );">Federal</a></td>
<td class="num">(9,345)<span></span>
</td>
<td class="num">(2,475)<span></span>
</td>
<td class="nump">6,664<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit', window );">State</a></td>
<td class="num">(1,783)<span></span>
</td>
<td class="num">(1,149)<span></span>
</td>
<td class="num">(2,470)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredForeignIncomeTaxExpenseBenefit', window );">Foreign</a></td>
<td class="num">(650)<span></span>
</td>
<td class="num">(7,781)<span></span>
</td>
<td class="num">(5,393)<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_DeferredIncomeTaxExpenseBenefit', window );">Total deferred income tax provision</a></td>
<td class="num">(11,778)<span></span>
</td>
<td class="num">(11,405)<span></span>
</td>
<td class="num">(1,199)<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_IncomeTaxExpenseBenefit', window );">Total income tax provision</a></td>
<td class="nump">$ 13,533<span></span>
</td>
<td class="nump">$ 20,630<span></span>
</td>
<td class="nump">$ 25,402<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_CurrentFederalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 federal tax expense (benefit) pertaining to income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<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.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-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_CurrentFederalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_CurrentForeignTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 foreign income tax expense (benefit) pertaining to income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_CurrentForeignTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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) pertaining to taxable income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<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.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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_CurrentIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_CurrentStateAndLocalTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 state and local tax expense (benefit) pertaining to income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-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_CurrentStateAndLocalTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_DeferredFederalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 federal income tax expense (benefit) pertaining to income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&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_DeferredFederalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_DeferredForeignIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 foreign income tax expense (benefit) pertaining to income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<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.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-109319<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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_DeferredForeignIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 income tax expense (benefit) pertaining to income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<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.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-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_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract</td>
</tr>
<tr>
<td style="padding-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_DeferredStateAndLocalIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 state and local tax expense (benefit) pertaining to income (loss) 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://fasb.org/us-gaap/role/ref/legacyRef<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.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=116825942&amp;loc=d3e330036-122817<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=84230637&amp;loc=d3e32639-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_DeferredStateAndLocalIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>100
<FILENAME>R79.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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6814514096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Employee Benefits (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement Benefits [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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanCostRecognized', window );">Defined Contribution Plan, Cost</a></td>
<td class="nump">$ 2.9<span></span>
</td>
<td class="nump">$ 2.8<span></span>
</td>
<td class="nump">$ 2.4<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch', window );">Defined Contribution Plan, Employer Matching Contribution, Percent of Match</a></td>
<td class="nump">50.00%<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_DefinedContributionPlanEmployerMatchingContributionPercent', window );">Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay</a></td>
<td class="nump">6.00%<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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent', window );">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</a></td>
<td class="nump">3.00%<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_us-gaap_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_DefinedContributionPlanCostRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 cost for defined contribution plan.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 70<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedContributionPlanCostRecognized</td>
</tr>
<tr>
<td style="padding-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_DefinedContributionPlanEmployerMatchingContributionPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 employees' gross pay for which the employer contributes a matching contribution to a defined contribution 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;">us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent</td>
</tr>
<tr>
<td style="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_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 employer matches of the employee's percentage contribution matched.</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_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch</td>
</tr>
<tr>
<td style="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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 percentage of employee gross pay the employee may contribute to a defined contribution 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;">us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent</td>
</tr>
<tr>
<td style="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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>101
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822897344">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments and Hedging Activities (Notes)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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 and Hedging Activities</a></td>
<td class="text"><div style="line-height:120%;text-align:left;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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">11.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivative Instruments and Hedging Activities</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company operates internationally and, in the normal course of business, is exposed to fluctuations in foreign currency exchange rates.&#160;The foreign currency exposures typically arise from transactions denominated in currencies other than the functional currency of the Company's operations, primarily the British Pound, Canadian Dollar, Euro and Japanese Yen. The Company uses derivative instruments that are designated in cash flow hedge relationships to reduce or eliminate the effects of foreign exchange rate change on sales. These contracts typically have maturities of </span><span style="font-family:inherit;font-size:10pt;"><span>thirty-seven months</span></span><span style="font-family:inherit;font-size:10pt;"> or less. At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company had outstanding cash flow hedges with a total notional value of </span><span style="font-family:inherit;font-size:10pt;"><span>$424.6 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$366.7 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively. </span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company also enters into economic hedges that are not designated as hedges from an accounting standpoint to reduce or eliminate the effects of foreign exchange rate changes typically related to short term trade receivables and payables. These contracts typically have maturities of </span><span style="font-family:inherit;font-size:10pt;"><span>ten months</span></span><span style="font-family:inherit;font-size:10pt;"> or less.  At </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company had outstanding economic hedges with a total notional value of </span><span style="font-family:inherit;font-size:10pt;"><span>$58.4 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$56.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively.</span></div><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The fair values of derivative instruments are as follows (in thousands):</span></div><div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"/></tr><tr><td style="width:50%;"/><td style="width:22%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></div></td></tr><tr><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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivatives not designated as hedging instruments:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other current assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,855</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>551</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>297</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivatives designated as cash flow hedges:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Other current assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>4,347</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>53</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,112</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>172</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>47</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>335</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Long-term liabilities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>414</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>795</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Gains (losses) associated with derivative instruments not designated as hedging instruments are as follows (in thousands):</span></div><div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"/></tr><tr><td style="width:51%;"/><td style="width:22%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal year ended</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Gain (loss) recognized in income</span></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:center;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Other income, net</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;"><span>89</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;"><span>1,568</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:justify;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following tables reflect the effect of derivatives designated as cash flow hedging for the years ended&#160;(in thousands):&#160;</span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Gain (loss) recognized in OCI on Derivative (1)</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal year ended</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Foreign currency forward contracts</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>16,483</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(686</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr></table></div></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:88px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:64px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The amount represents the change in fair value of derivative contracts due to changes in spot rates.</span></div></td></tr></table><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:44%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="15" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Gain (loss) recognized in earnings on cash flow hedging instruments</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of revenue</span></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;"><span style="font-family:inherit;font-size:9pt;">Consolidated statements of income in which the effects of cash flow hedging instruments are recorded</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,214,010</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>670,083</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,092,584</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>537,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;">Gain or (loss) on cash flow hedging relationships:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;">Foreign currency forward contracts:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">Amount of gain (loss) reclassified from AOCI into earnings</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,889</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>948</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(386</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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://fasb.org/us-gaap/role/ref/legacyRef<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>102
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813672528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition (Notes)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_RevenueRecognitionAndDeferredRevenueAbstract', window );"><strong>Revenue Recognition and Deferred Revenue [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_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue Recognition, Policy [Policy Text Block]</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:6%;"/><td style="width:94%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">3.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Revenue Recognition</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company primarily derives its revenue from product sales. The Company sells products directly to consumers through on-line stores and indirectly through resellers and distributors. Revenue is recognized upon transfer of control of promised products or services to customers, generally as title and risk of loss pass, in an amount that reflects the consideration the Company expects to receive in exchange for those products or services. Revenue is recognized only to the extent that it is probable that a significant reversal of revenue will not occur. Taxes collected from customers, which are subsequently remitted to governmental authorities, are excluded from revenue. Shipping and handling expenses are considered fulfillment activities and are expensed as incurred.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s product portfolio includes various consumer robots, many of which are Wi-Fi connected. The consumer robots are generally highly dependent on, and interrelated with, the embedded software and cannot function without the software. As such, the consumer robots are accounted for as a single performance obligation, and the revenue is recognized at a point in time when the control is transferred to distributors, resellers or directly to end customers through online stores. For consumer robots with Wi-Fi capability ("connected robots"), each sale represents an arrangement with multiple promises consisting of the robot, an app, cloud services and potential future unspecified software upgrades. The Company has determined that the app, cloud services and potential future unspecified software upgrades represent one promised service to the customer to enhance the functionality and interaction with the robot (referred to collectively as "Cloud Services"). </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Prior to the adoption of ASU No. 2014-09, "Revenue from Contracts with Customers," ("ASC 606") on December 31, 2017, the beginning of fiscal year 2018, the revenue allocated to the Cloud Services was deferred and recognized on a straight-line basis over the expected life of the connected robot. On December 31, 2017, the Company adopted ASC 606 using the modified retrospective method applied to those contracts that were not completed as of the adoption date. Upon ASC 606, the Company concluded that, on a quantitative and qualitative basis, the Cloud Services did not constitute a material performance obligation for the then existing products and, as such, these services were not considered a separate performance obligation that required allocation of transaction price. Under the modified retrospective method, the Company recognized the cumulative effect of the adoption and recorded a net increase of $1.0 million to the beginning retained earnings as of December 31, 2017. </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">During the third quarter of 2018, the Company launched Roomba i7 and i7+ which brought a new level of intelligence and automation to robotic vacuum cleaners with the ability to learn, map and adapt to a home's floor plan. The Company has concluded that beginning with this launch, the Cloud Services related to these new products are a material performance obligation. For contracts that contain multiple performance obligations, the transaction price is allocated to each performance obligation based on a relative standalone selling price ("SSP"). The SSP reflects the Company's best estimate of what the selling prices of elements would be if they were sold regularly on a standalone basis. Revenue allocated to the robots is recognized at a point in time when control is transferred. Revenue allocated to the Cloud Services is deferred and recognized on a straight-line basis over the estimated period the software upgrades and services are expected to be provided. For contracts with a duration of greater than one year, the transaction price allocated to performance obligations that are unsatisfied as of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> are not material. The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected duration of one year or less.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company&#8217;s products generally carry a one-year or two-year limited warranty that promises customers that delivered products are as specified. The Company does not consider these assurance-type warranties as a separate performance obligation and therefore, the Company accounts for such warranties under ASC 460,&#160;"Guarantees."</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company provides limited rights of returns for direct-to-consumer sales generated through its on-line stores and certain resellers and distributors. The Company records an allowance for product returns based on specific terms and conditions included in the customer agreements or based on historical experience and the Company's expectation of future returns. In addition, the Company may provide other credits or incentives which are accounted for as variable consideration when estimating the amount of revenue to recognize. Where appropriate, these estimates take into consideration relevant factors such as the Company&#8217;s historical experience, current contractual requirements, specific known market events and forecasted inventory level in the channels. Overall, these reserves reflect the Company&#8217;s best estimates, and the actual amounts of consideration ultimately received may differ from the Company&#8217;s estimates. Returns and credits are estimated at contract inception and updated at the end of each reporting period as additional information becomes available.  As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, the Company has reserves for product returns of </span><span style="font-family:inherit;font-size:10pt;"><span>$55.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> and other credits and incentives of </span><span style="font-family:inherit;font-size:10pt;"><span>$134.0 million</span></span><span style="font-family:inherit;font-size:10pt;">. As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company had reserves for product returns of </span><span style="font-family:inherit;font-size:10pt;"><span>$53.9 million</span></span><span style="font-family:inherit;font-size:10pt;"> and other credits and incentives of </span><span style="font-family:inherit;font-size:10pt;"><span>$97.7 million</span></span><span style="font-family:inherit;font-size:10pt;">. Revenue recognized during the years ended December 28, 2019 and December 29, 2018 related to performance obligations satisfied in a prior period was not material. </span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Disaggregation of Revenue</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about disaggregated revenue by geographical region (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="7"/></tr><tr><td style="width:58%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">United States</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>603,618</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>560,995</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">EMEA</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>357,760</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;"><span>311,659</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Other</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>252,632</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;"><span>219,930</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Total revenue</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,214,010</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,092,584</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Contract Balances </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following table provides information about receivables and contract liabilities from contracts with customers (in thousands):</span></div><div style="line-height:120%;padding-top:6px;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:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:57%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:19%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 28 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Accounts receivable, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>146,161</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>162,166</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Contract liabilities</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,991</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,756</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company invoices customers based upon contractual billing schedules, and accounts receivable are recorded when the right to consideration becomes unconditional. Contract liabilities primarily relate to prepayments received from customers in advance of product shipments. The change in the opening and closing balances of the Company&#8217;s contract assets and contract liabilities primarily results from the timing difference between the Company&#8217;s performance and the customer&#8217;s payment. During the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the Company recognized </span><span style="font-family:inherit;font-size:10pt;"><span>$5.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$6.7 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, of the contract liability balance as revenue upon transfer of the products to customers. </span></div><div style="line-height:120%;padding-top:6px;text-indent:16px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-style:italic;font-weight:bold;">Practical Expedients and Exemptions</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company generally expenses sales commissions when incurred because the amortization period is generally one year or less. These costs are recorded within sales and marketing expenses.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company does not assess whether a prepayment received represents a significant financing component as the period between when the payment is received and the transfer of the products to the customer is generally one year or less.</span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The Company does not disclose the value of unsatisfied performance obligations for contracts with an original expected duration of one year or less.</span></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_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=84158767&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="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_RevenueRecognitionAndDeferredRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_RevenueRecognitionAndDeferredRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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>EXCEL
<SEQUENCE>103
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( ). 35 ?(\\#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,$%     @ DX!-4"?HAPZ"    L0   !    !D;V-0<F]P
M<R]A<' N>&UL38Y-"\(P$$3_2NG=;BGH06) L$?!D_>0;FP@R8;-"OGYIH(?
MMWF\81AU8\K(XK%T-8943OTJDH\ Q:X831F:3LTXXFBD(3^ G/,6+V2?$9/
M-(X'P"J8%EQV^3O8:W7..7AKQ%/25V^9"CGIYFHQ*/B76_..7+8\#?NW_+""
MWTG] E!+ P04    " "3@$U0J+$3F.X    K @  $0   &1O8U!R;W!S+V-O
M<F4N>&ULS9+/2L0P$(=?17)O)VEQ#Z&;B^))07!!\1:2V=U@\X=DI-VWMZV[
M740?P&-F?OGF&YC.)&EBQN<<$V9R6&Y&WX<B3=JR(U&2 ,4<T>M23XDP-?<Q
M>TW3,Q\@:?.A#P@-YQOP2-IJTC #J[02F>JLD2:CIIC/>&M6?/K,_0*S!K!'
MCX$*B%H 4_/$=!K[#JZ &4:8??DNH%V)2_5/[-(!=DZ.Q:VI81CJH5URTPX"
MWIX>7Y9U*Q<*Z6!P^E6<I%/"+;M,?FWO[G</3#6\X15O*M'NQ$;R5HK;]]GU
MA]]5V$?K]NX?&U\$50>_[D)] 5!+ P04    " "3@$U0F5R<(Q &  "<)P
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
MO!Y>]8>+5E_&SQC!]"UE_0]02P,$%     @ DX!-4-<U&;Q(!   110  !@
M  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q]F%V/ZC80AO\*XKXG]OA[!4B%
MJFJE5EJ=ZK3763 +.@FA278Y_?=U0A;!S'AO( GOV*]CS^/!BTO3?N\.,?:S
M'W5UZI;S0]^?GXJBVQYB779?FG,\I5_V35N7?;IM7XONW,9R-P;550%"V*(N
MCZ?Y:C$^>VY7B^:MKXZG^-S.NK>Z+MO_UK%J+LNYG'\\^'I\/?3#@V*U.)>O
M\:_8?SL_M^FNN+6R.];QU!V;TZR-^^7\9_FT46H(&!5_'^.EN[N>#4-Y:9KO
MP\WON^5<#(YB%;?]T$29OM[C)E;5T%+R\>_4Z/S6YQ!X?_W1^J_CX--@7LHN
M;IKJG^.N/RSG?C[;Q7WY5O5?F\MO<1J0F<^FT?\1WV.5Y(.3U,>VJ;KQ<[9]
MZ_JFGEI)5NKRQ_7[>!J_+U/['V%\ $P!< N0^M, -04H%%!<G8U#_:7LR]6B
M;2ZS]CI;YW)8%/))I9>Y'1Z.[V[\+8VV2T_?5U8MBO>AG4FRODK@3@*/B@U5
MZ)NB2-W?/ #K <9P=>\A$Z_8>#7&Z_MX@\9PE;A1<KJ.0045\$"H3"JAG.+=
M:-:-IFXL<G.5F/MNG%#8#%4I:87AO1C6BZ%>'/)BJ!=MI97(#".S(.]&]N#&
MLFXL=>.1&TN[,4YI9'K#R*RV*C-/CG7CJ)N W#@Z QH\6EL;J@)CK>"]>-:+
M)UZ<0%X\Z<4$#1*_&48FM5:.=Q-8-X&Z0<MA'4@WS@2/9G-#5<8)R*P9*7A
M">H&,*$$Z4@[[; =1I:9)9F!I:1>""TE]2)=P/G$R)0-+F3\\."40/UH[ =H
MKDCO"&UXG0^YV>)1+"F+'6;QI'GH"90AAJ@,-.18+'D82TICAVDL&= *&7":
M,S)IE,FM(![(DA+982)+RMH PAF%#5&=LS;<H?O1$0]E:<GN>Y<XCRWP()64
MI Z35%)(RK3)$)9R.F6=AHPC'J>2\M1CGDI*2B\=WI VC,Q),+D\Y8$J*5$]
M)JJDL-1&!VR'0ZK)Y"CP1 5*5(^)"A25(, (G*2<3BIG,OL-\%P%RE6/N0H4
MF.GU )XO1I;)4,@4HY2I'C,5*"N#)*^&BK3(E6_ XQ0H3G'*K('!J5":V&%D
MRKO<1/$X!8I3CW$*E),V93KQPQ7!WF<2'7B< L6IQS@%BDFPWN))W7"Z5'"K
M3*H#CU.@12XNB]:<!B?ZYYI')SR6@6(Y8 @"Q:W 1CZ3//K@80P4QK@:6@.E
M+- )8D2YK0IX$ ,%,?X/N :*6!FL-GBKXG0.G,MLOXJ'L:(P#AA]BBEO#2C
M-26C2WNG@)PC'L:*PCA@ "JF>A4"KV%&]5.JRS-3IG@>*\IC7)JM%46M-2#P
M_[D-HTL5G((,=%3FN(%".6 (*GJ2P-9PC(ZMX8J[\YSA@.W/LGT]GKK92]/W
M33T>X.R;IH^I3?$EC>\0R]WMIHK[?KATZ;J]'FQ=;_KF/!W:%;>3P]7_4$L#
M!!0    ( ). 35!4M70Y&@(  )\&   8    >&PO=V]R:W-H965T<R]S:&5E
M=#,N>&ULC971CILP$$5_!?$!,1@()")(#5752JT4;=7VV4F&@-9@:CMA^_>U
M#8N(8^UN'F*/?>_,&4!V/C#^+&H Z;VTM!,[OY:RWR(D3C6T1*Q8#YW:J1AO
MB50AOR#1<R!G8VHIPD&P1BUI.K_(S=J!%SF[2MIT<.">N+8MX?_V0-FP\T/_
M=>&IN=12+Z B[\D%?H+\U1^XBM"<Y=RTT(F&=1Z':N=_"K=EIO5&\+N!02SF
MGN[DR-BS#KZ==WZ@@8#"2>H,1 TW*(%2G4AA_)UR^G-);5S.7[-_,;VK7HY$
M0,GHG^8LZYV?^=X9*G*E\HD-7V'J)_&]J?GO< .JY)I$U3@Q*LR_=[H*R=HI
MBT)IR<LX-IT9AW$G22>;VX G YX-8?RF(9H,D65 (YEI]3.1I,@Y&SP^OJR>
MZ&\BW$;J89[THGEV9D]U*]3JK=BD.;KI/)-D/TKP0H+O%>6C(IX52)6?&;"3
M 1M[M&3(W/[(Z8^,/U[Z-U8/HR0QDLY(DL#\K$[>U]WQQ$Z>^($GM OMXX="
M-LI;BCN(Q F1."!""V+49,L2*UM4OB.Z0UD[4=8.%.L3VJ\?N@V#P/F*/J*\
M@TJ=4*D#*K*@TH=2.(L2'&UL)H<P3;,,I]B-E#F1,@=2;"%E'T5R"-U(:'%4
MZ*/[!^&7IA/>D4EUZIBSH6),@DH:K%2^6MT6<T"ADGJ:JCD?S\PQD*R?K@,T
MWTG%?U!+ P04    " "3@$U0IR9-.R4$  !+$@  &    'AL+W=O<FMS:&5E
M=',O<VAE970T+GAM;(V8VX[B1A"&7P7Q +BKSQX!T@"*$BF11AME<^V!YJ"U
M,;'-L'G[M _#0E5YE9O![OFJ^J_N=O]VSV]E]:T^AM!,OA?YN5Y,CTUS>4F2
M>GL,15;/RDLXQ__LRZK(FGA;'9+Z4H5LUP45>2*%L$F1G<[3Y;QK>ZN6\_+:
MY*=S>*LF];4HLNK?5<C+VV(*T\^&+Z?#L6D;DN7\DAW"GZ'YZ_)6Q;ODGF5W
M*L*Y/I7G217VB^DKO&RD;@,ZXNLIW.J'ZTE;RGM9?FMO?MLMIJ)5%/*P;=H4
M6?SY".N0YVVFJ..?(>GTWF<;^'C]F?V7KOA8S'M6AW69_WW:-<?%U$\GN[#/
MKGGSI;S]&H:"S'0R5/][^ AYQ%LEL8]MF=?=W\GV6C=E,62)4HKL>_][.G>_
MMR'_9Q@?((< >0\ ^], -02H'P'ZIP%Z"- H(.E+Z<9FDS79<EZ5MTG53^\E
M:U<1O.@X^MNVL1OL[G]Q>.K8^K$$8>;)1YMH8%8](Q^9.Y'$[/<N)-?%2I)P
M^=S!FA+ZF=A0 H3E12BV3M4ET$\)'*JS9US'G'M&@A8@D%R&$ZDT'HNFG/<J
MA9'!TZQNS>CV2'?/F(=^K/'*XE&FF %O 6$;BFGE 32OVK"J#:,Z1:H-Z0?
M24"B&<H;C4>:H:15GI=L6<F62L83O[)TH)T07B'-%#/*@;%(-,6T$<Y(7K5C
M53M&-1K"E:-RM$HE6OUK!C-&2[38-A332H%)>=6>5>V['.I)]4C9*9L@9<I&
ML[!*Z9K08/%#O^8P825:K1L& P5ZI&P0_&8K&-T:[[:"="7C &LT$6N. Z'Q
M]&\8#JQ\7-S/TD=\ ACIQ"B =.45"/Q\,%CJC"#"F6S:N9'M$UCS>07Y/[:B
M 7H:(F'P5L12UF#5E(I/VXAFWJN ,2NP6+-BM@^G<&UKCM.I%7@W8CAEA;9C
MTGF[ L:O /LL4(OQU@)9X!2+L^(E-BR&<]*F8^N;=RQ@+ LK6@'G,Q(_!FL&
MDUX(+)M2RKJ1EQK@30LXUR*KFQI-&E]$R%-)L?BJ8>EP4\Y99<>$\[X%C'%)
M;+= O0:4H<(I)H559+P9S&@QXCO .Q=X1C<VW %Z>O$S"B^ -8>Y-"7C33$C
M4COR/@:\84)*+5>.E"YY\Y*,>4ELN@/D'Q?U3""+6[,4?MHV# 4S;T9$\[8E
M&=N2V'$'Z+$C.4OQBP)#Q=(<%DTIF#DW(IKW+"F9R1JKF[<0R5@(G2RZY<=]
MBA;.8,Z2=<IC8U\[DO</R?@'G2^ZX4OO%-Z&6<QJO"_PV8Q"NI.'+^HB5(?N
MM**>;,OKN6F_3!]:[R<BK[+](D?M*WC9].<:/]+TQRQ_9-7A=*XG[V43O_>[
MK_)]638AJA2SJ.\8LMW])@_[IKUT\;KJCS?ZFZ:\#$<WR?W\:/D?4$L#!!0
M   ( ). 35!=@],5F@(  )H(   8    >&PO=V]R:W-H965T<R]S:&5E=#4N
M>&UL?59=;YLP%/TKB/<6@\V'HR12$S1MTB95G;8]NXF3H )FMI-T_WZVH928
MV[Z ;<X]/N=B[F5Y%?)%G3C7P6M3MVH5GK3N%E&D=B?>,'4O.MZ:)P<A&Z;-
M5!XCU4G.]BZHJ:,$H2QJ6-6&ZZ5;>Y3KI3CKNFKYHPS4N6F8_+?AM;BNPCA\
M6WBJCB=M%Z+ULF-'_I/K7]VC-+-H9-E7#6]5)=I \L,J?(@798QL@$/\KOA5
M3<:!M?(LQ(N=?-NO0F05\9KOM*5@YG;A6U[7ELGH^#N0AN.>-G Z?F/_XLP;
M,\],\:VH_U1[?5J%11CL^8&=:_TDKE_Y8"@-@\']=W[AM8%;)6:/G:B5NP:[
ML]*B&5B,E(:]]O>J=?=K_R1/AC X(!D"DC$@SCX-P$, ?@\@GP:0(8!X 5%O
MQ>6F9)JMEU)< ]F_WH[94Q0OB,G^SBZZ9+MG)CW*K%[6<9(MHXLE&C";'I-,
M,2,B,NSC%@FTQ2:9A2>W&VSG"'*+*.>(&&6P" SZQ(X W_C,80("$A!'0&X(
M8B]1/29WF-9ABA0CY+D%4#FE7D[*.2I%-".PY!24G *>"Y@@ PDRP#/U//>8
M=*+S#A.<>IX!5%I0[Z"5<U1,Z0>6<U!Q/E>,O?QO\ODN"<ZPIWB.NL.3$],+
MGH,(1;#> M1; 'K]4U7,E<0D+CR] (I0[V65 "BA*2R8@H(I(-@[NALZVR4A
M7N:V<\R=;ZD$,.2#C]ZT'K"Z(4 N]LL;FGUJ%*/45PS BCA)_>\6@*4X1GZM
MB28%NN'RZ)J?"G;BW&I;Z":K8X-]<#W'6]_8QNL*_SM-W[5_,'FL6A4\"VW:
MAROR!R$T-RK1O<GJR?PHC).:'[0=YF8L^V[93[3HAC^!:/P=6?\'4$L#!!0
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
MS&')'DKVNL^9P0$R&"#3?<YDGT^,G^CD,!W:4Y\!E?D@9UE3Y%T^,TT!2@Y
MLAC:35"W647'4K*FQ$06[Q$74B.4&H%4%E+CST1L?TH4FE@1.<92<R@UUU)=
M)J3F>O(X.#'%6T#Y:.2#H"F;!S^3=:S!F<V \74RM1D].#;]$REP"SD3G> *
MQ.5S3["=2<D6"/=2N%4W"I0%*5M3-G*0HC45YS*-A3G^HR60:V82M,49VC+H
M=I#=9MTA-G):MP!;$><DEP;B/-/LDX:MP6IOR)2'.CU?;-1\:6KEHY=KK4"<
M=6$F_5AL#]8KV4$NZI&YN!&SE4D(8<GZ6,H&F#5^DJ O=6-7LMJ60BYU:RM9
MD?&<2>' <F@ZD*-PC=G@?)C1C:W)(F]2SPDP)XY*-J"L=5[*UA@;-GY&-K8I
MBWQ*C;<VF;0NC9>5'N!"&@0E'& 9VSGAV+1LKG/2W!(A["$$/"3("HA SN?T
M\,O%#3ER)"L_Q%$*-U=T8Q<AX")!5D*D,__*.[5*$$8LBY4"8=:[F=5-V$F(
M@&Y9%HW0]$YYB&K -16]3*4 LE,CO=2,K8N =<GB=D/(DZ)5HC4FLQ&*9%T,
MV<SZ(&Q;!+8T0=89I)U&)G^ K#+'LC1"6$K^(<Z(QJ9%VK2L<BW2/F,I1B4<
M8,[(_5J!L%1SS%0WA$V+P%XJR.J&H&OEQ%(XXC*6U5*!N)2[IP$OM6/CH@ 2
MZ=RT81,A8"+*M F9@U,+!%B-X4RM:X3Y,-=S;"$$-C[R,=J0WJVL LG)W2(L
MV83*_@"C/,[H9NQ;#'S+RR3*VF?D"@'(RAN]1-X-=2D8NQ4#MXK2:!GY"RO-
M@')LU0,"N.#S.=G8K!B8590FR]IAY$9D"YB5LW);#*AI_R\5SYR# :N*ZLD
MNRR3&RN/2! 75.('5-H<Q#B301B[%0.WBM)C67M,&B"6]<,6<10SEG4HX"B5
MV7/YD[%G,? L6?)N6+M,VK&R/!?< @YUL4#<91<OI6/;XDRG_CAW\(K=@\&V
M1Y9JFQ&:'G<2>;F4M@#CW,L:JD#1? SR&&8].20_5,WC\ *B7=S5+\>N/VR>
M7#V_Y/A(_2&[N+ZQ5\7I5<6/,*<W)W^4S>/NV"Z^U%U7'X:#]H>Z[JJDTGQ(
M<_-4E??G'_OJH>N_AO2].;VQ./WHZN?Q;<SZ_$KH]G]02P,$%     @ DX!-
M4%Q4# JR 0  T@,  !@   !X;"]W;W)K<VAE971S+W-H965T."YX;6Q]4VUO
MFS 0_BN6?T!-2+:E$2 UG:9.:J6HT[;/#AQ@U2_4-J'[]SL;PEB']@7?'?<\
M]]SYG W&OK@6P),W);7+:>M]=V#,E2TH[FY,!QK_U,8J[M&U#7.=!5Y%D)(L
M39*/3'&A:9'%V,D6F>F]%!I.EKA>*6Y_'4&:(:<;>@T\BZ;U(<"*K.,-? /_
MO3M9]-C,4@D%V@FCB84ZIW>;PW$7\F/"#P&#6]@D='(VYB4X7ZN<)D$02"A]
M8.!X7. >I Q$*.-UXJ1SR0!<VE?V+[%W[.7,'=P;^5-4OLWIGI(*:MY+_VR&
M!YCZ^4#)U/PC7$!B>E""-4HC7?R2LG?>J(D%I2C^-IY"QW.8^*^P=4 Z =)W
M #86BLH_<\^+S)J!V''V'0]7O#FD.)LR!.,HXC\4[S!Z*3;[?<8N@6C*.8XY
MZ3)GSF#(/I=(UTH<TW_@Z3I\NZIP&^';OQ3>KA/L5@EVD6#WWQ97<FZ3=T78
M8J8*;!.WR9'2]#IN\B(Z+^Q=&N_D3_JX[4_<-D([<C8>;S;.OS;& TI);G"%
M6GQ@LR.A]L'\A+8=UVQTO.FF%\3F9US\!E!+ P04    " "3@$U0 O:[P;,!
M  #2 P  &    'AL+W=O<FMS:&5E=',O<VAE970Y+GAM;'U3[8[5(!!]%<(#
M++<?ZGK3-MF[QFBBR<T:U]_<=MJ2!:8"O5W?7J#=6K7Z!YAASIDSPU!,:)YL
M#^#(LY+:EK1W;C@R9NL>%+<W.(#V-RT:Q9TW3<?L8( W$:0D2P^'UTQQH6E5
M1-_95 6.3@H-9T/LJ!0W/TX@<2II0E\<#Z+K77"PJAAX!U_ ?1W.QEML96F$
M FT%:F*@+>E=<CSE(3X&/ J8[.9,0B47Q*=@?&Q*>@B"0$+M @/WVQ7N0<I
MY&5\7SCIFC( M^<7]O>Q=E_+A5NX1_E--*XOZ2TE#;1\E.X!IP^PU/.*DJ7X
M3W %Z<.#$I^C1FGC2NK1.E0+BY>B^/.\"QWW:;[)LP6V#T@70+H";F,>-B>*
MRM]QQZO"X$3,W/N!AR=.CJGO31V<L17QSHNWWGNMDK=)P:Z!:(DYS3'I-F:-
M8)Y]39'NI3BE?\'3?7BVJS"+\.PWA?\@R'<)\DB0_[?$O9CLCR1LTU,%IHO3
M9$F-HXZ3O/&N WN7QC?Y%3Y/^V=N.J$MN:#S+QO[WR(Z\%(.-WZ$>O_!5D-"
MZ\+QC3^;><QFP^&P_""V?N/J)U!+ P04    " "3@$U0R[*-R;8!  #2 P
M&0   'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6QM4V%OVR 0_2N('U 2QVF[
MR+;4=)HZ:96B3ML^$_MLHP+G H[;?S_ KN=V_@+<<>_=N^/(!C3/M@5PY%5)
M;7/:.M<=&+-E"XK;*^Q ^YL:C>+.FZ9AMC/ JPA2DB6;S3537&A:9-%W,D6&
MO9-"P\D0VRO%S=L1) XYW=)WQY-H6A<<K,@ZWL!/<+^ZD_$6FUDJH4!;@9H8
MJ'-ZMST<TQ ? WX+&.SB3$(E9\3G8'RO<KH)@D!"Z0(#]]L%[D'*0.1EO$R<
M=$X9@,OS._NW6+NOY<PMW*/\(RK7YO26D@IJWDOWA,,#3/7L*9F*_P$7D#X\
M*/$Y2I0VKJ3LK4,UL7@IBK^.N]!Q'\:;?3+!U@')!$AFP&W,P\9$4?E7[GB1
M&1R(&7O?\?#$VT/B>U,&9VQ%O//BK?=>BNV7-&.70#3%',>89!DS1S#//J=(
MUE(<D__@R3I\MZIP%^&[#PKWZP3I*D$:"=(/!->?2ER+N?F4A"UZJL T<9HL
M*;'7<9(7WGE@[^(CLG_AX[0_<M,(;<D9G7_9V/\:T8&7LKGR(]3Z#S8;$FH7
MCC?^;,8Q&PV'W?2#V/R-B[]02P,$%     @ DX!-4&LS7P.W 0  T@,  !D
M  !X;"]W;W)K<VAE971S+W-H965T,3$N>&UL;5/;;MLP#/T501]0.4ZZI8%M
MH&DQ=, &!!W6/BLV;0O5Q97DN/O[4;+K>IU?))'B.3RDJ&PP]L6U )Z\*:E=
M3EOONP-CKFQ!<7=E.M!X4QNKN$?3-LQU%G@504JR-$F^,,6%ID46?2=;9*;W
M4F@X6>)ZI;C]<P1IAIQNZ+OC432M#PY69!UOX!?XW]W)HL5FEDHHT$X832S4
M.;W='(Z[$!\#G@0,;G$FH9*S,2_!^%[E- F"0$+I P/'[0)W(&4@0AFO$R>=
M4P;@\OS._BW6CK6<N8,[(Y]%Y=N<[BFIH.:]](]F>("IGFM*IN)_P 4DA@<E
MF*,TTL65E+WS1DTL*$7QMW$7.N[#>+/=3[!U0#H!TAFPCWG8F"@JO^>>%YDU
M [%C[SL>GGAS2+$W97#&5L0[%._0>RDV-_N,70+1%',<8])ES!S!D'U.D:ZE
M.*;_P=-U^'95X3;"M_\HO%DGV*T2["+!;ID_23Z5N!;SN4BVZ*D"V\1I<J0T
MO8Z3O/#. WN;QC?Y"!^G_2>WC=".G(W'EXW]KXWQ@%*2*QRA%C_8;$BH?3A^
MQ;,=QVPTO.FF'\3F;US\!5!+ P04    " "3@$U0AN?\@K8!  #2 P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Q,BYX;6QM4V%OW" ,_2N('U!R)-VJ4Q*I
MUVG:I$TZ==KVF4N<!!7B#,BE^_<#DJ9IER^ C=_SLS'YA.;)=@"./&O5VX)V
MS@U'QFS5@1;V!@?H_4V#1@OG3=,R.Q@0=01IQ7B2?&!:R)Z6>?2=39GCZ)3L
MX6R(';46YN\)%$X%/= 7QZ-L.Q<<K,P'T<(/<#^'L_$66UEJJ:&W$GMBH"GH
M_>%XRD)\#/@E8;*;,PF57!"?@O&U+F@2!(&"R@4&X;<K/(!2@<C+^+-PTC5E
M &[/+^R?8^V^EHNP\(#JMZQ=5] [2FIHQ*C<(TY?8*GGEI*E^&]P!>7#@Q*?
MHT)EXTJJT3K4"XN7HL7SO,L^[M-\DZ8+;!_ %P!? 7<Q#YL31>6?A!-E;G B
M9N[](,(3'X[<]Z8*SMB*>.?%6^^]ECSA.;L&HB7F-,?P3<QAC6">?4W!]U*<
M^']PO@]/=Q6F$9Z^49CN$V2[!%DDR-X09.]*W(NY?9>$;7JJP;1QFBRI<.SC
M)&^\Z\#>\_@FK^'SM'\7II6])1=T_F5C_QM$!UY*<N-'J/,?;#44-"X</_JS
MF<=L-AP.RP]BZS<N_P%02P,$%     @ DX!-4"58Q>*U 0  T ,  !D   !X
M;"]W;W)K<VAE971S+W-H965T,3,N>&UL?5/;;MP@$/T5Q <$+[O=K%:VI6RJ
M*I5::96JS3-KCR\*%P?P.OW[#MAQK,3J"S##.6<N#.E@[+-K #QY55*[C#;>
M=T?&7-& $N[&=*#QIC)6"8^FK9GK+(@RDI1D/$GV3(E6TSR-OK/-4]-[V6HX
M6^)ZI83]>P)IAHQNZ)OCL:T;'QPL3SM1PR_PO[NS18O-*F6K0+O6:&*ARNC=
MYGC:!7P$_&EA<(LS"95<C'D.QO<RHTE(""04/B@(W*YP#U(&(4SC9=*D<\A
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
MRZ;^-]8&0"F[&QRA#C_88BAH0CS>X]E-8S89P?;S#V++-RY_ 5!+ P04
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
M-%R"LEPK9* M\7UZ/.4A/@;\Y##9S1F%2BY:/P?C2U/B) @" ;4+#,QO5W@
M(0*1E_%[X<1KR@#<GE_9/\7:?2T79N%!BU^\<7V)#Q@UT+)1N"<]?8:EGEN,
MEN*_PA6$#P]*?(Y:"QM75(_6:;FP>"F2O<P[5W&?YILL76#[ +H Z HXQ#QD
M3A25/S+'JL+H"9FY]P,+3YP>J>]-'9RQ%?'.B[?>>ZUH=E>0:R!:8DYS#-W$
MI&L$\>QK"KJ7XD3_@]-]>+:K,(OP[(W"PSY!ODN01X+\#<''=R7NQ.3)NR1D
MTU,)IHO39%&M1Q4G>>-=!_:>QC?Y%SY/^S=F.JXLNFCG7S;VO]7:@9>2W/@1
MZOT'6PT!K0O'.W\V\YC-AM/#\H/(^HVKOU!+ P04    " "3@$U0#*^*\K,!
M  #2 P  &0   'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6Q]4V%OW" ,_2N(
M'U#N2+95IR12K].T2IMTZK3U,Y<X"2J$%,BE^_<S)$W3+ML7P,;O^=F8;#3V
MT;4 GCQKU;F<MM[W!\9<V8(6[LKTT.%-;:P6'DW;,-=;$%4$:<7X;O>1:2$[
M6F31=[)%9@:O9 <G2]R@M;"_CZ#,F-,]?7'<RZ;UP<&*K!<-_ #_LS]9M-C"
M4DD-G9.F(Q;JG-[L#\<TQ,> 7Q)&MSJ34,G9F,=@W%4YW05!H*#T@4'@=H%;
M4"H0H8RGF9,N*0-P?7YA_Q)KQUK.PL&M40^R\FU.KRFIH!:#\O=F_ IS/1\H
MF8O_!A=0&!Z48([2*!=74@[.&SVSH!0MGJ===G$?IYLDF6'; #X#^ *XCGG8
ME"@J_RR\*#)K1F*GWO<B//'^P+$W97#&5L0[%._0>REXNL_8)1#-,<<IAJ]B
M7B,8LB\I^%:*(_\+SK?AR:;"),*3-PK_09!N$J21(/UOB5LQR;LD;-53#;:)
MT^1(:88N3O+*NPSL#8]O\AH^3?MW81O9.7(V'E\V]K\VQ@-*V5WA"+7XP19#
M0>W#\1.>[31FD^%-/_\@MGSCX@]02P,$%     @ DX!-4$OF*""U 0  T@,
M !D   !X;"]W;W)K<VAE971S+W-H965T,C4N>&UL?5/;;MP@$/T5Q >$7=;9
M1"O;4C91E$JMM$K4]IFUQQ<%& ?P.OW[ '9<M[7Z LPPY\R984@'-*^V 7#D
M74EM,]HXUQT8LT4#2M@K[$#[FPJ-$LZ;IF:V,R#*"%*2\<UFSY1H-<W3Z#N9
M/,7>R5;#R1#;*R7,KR-('#*ZI9^.Y[9N7'"P/.U$#2_@OG<GXRTVLY2M FU;
MU,1 E=&[[>&8A/@8\*.%P2[.)%1R1GP-QI<RHYL@""04+C (OUW@'J0,1%[&
MV\1)YY0!N#Q_LC_&VGTM9V'A'N7/MG1-1F\I*:$2O73/.#S!5,\U)5/Q7^$"
MTH<')3Y'@=+&E12]=:@F%B]%B?=Q;W7<A_%F?S/!U@%\ O 9<!OSL#%15/X@
MG,A3@P,Q8^\[$9YX>^"^-T5PQE;$.R_>>N\EYTF2LDL@FF*.8PQ?Q&SG".;9
MYQ1\+<61_P/GZ_#=JL)=A._^4'B]3I"L$B21(/EOB6LQ^[^2L$5/%9@Z3I,E
M!?8Z3O+".P_L'8]O\CM\G/9OPM2MMN2,SK]L['^%Z,!+V5SY$6K\!YL-"94+
MQQM_-N.8C8;#;OI!;/[&^0=02P,$%     @ DX!-4!W?RC:U 0  T@,  !D
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
MMA@2:A>.7_W93&,V&0[[^0>QY1L7_P!02P,$%     @ DX!-4+]$>FW3 0
MG 0  !D   !X;"]W;W)K<VAE971S+W-H965T,S$N>&UL;51A;YLP$/TKEG]
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
M8*DGP6@I_@M<@5NXR\1JE))K_T7EJ(T4"XM-1;"W>>UZOT[SR7VRA(4#Z!)
MUX"#UR&SD,_\B1E69$I.2,UW/S#WBZ,CM7=3.J>_"G]FD]?6>RUB2C-R=40+
MYC1CZ 83K0ABV5<)&I(XT7_":3@\#F88^_!X&Q[]AV ?)-A[@OU?)<8W)88P
M^[!($A1) @3)C4@(DX9%TJ!(&B"XOQ$)80XW(F33'0)4X^="HU*.O9_)C7<=
MO0?JN^L#/L_M5Z::KM?H(HWM4=])M90&;"J[.UMP:Y^*U>!0&[>UK8W4/#"S
M8>2PO 5D?9"*/U!+ P04    " "3@$U08UFOQ+4!  #2 P  &0   'AL+W=O
M<FMS:&5E=',O<VAE970S-BYX;6QM4]MNG# 0_17+'Q"#(6FZ J1LJJJ5&FF5
MJNVS%P:PX@NQS9+\?6W#4I3R8GO&YYRY>%Q,VKS8'L"A-RF4+7'OW' @Q-8]
M2&9O] #*W[3:2.:\:3IB!P.LB20I"$V2.R(95[@JHN]DJD*/3G %)X/L*"4S
M[T<0>BIQBJ^.9][U+CA(50RL@Y_@?@TGXRVRJC1<@K)<*V2@+?%#>CCF 1\!
MOSE,=G-&H9*SUB_!^-Z4. D)@8#:!07FMPL\@A!!R*?QNFCB-60@;L]7]:^Q
M=E_+F5EXU.(/;UQ?XGN,&FC9*-RSGK[!4L\M1DOQ/^ "PL-#)CY&K86-*ZI'
MZ[1<5'PJDKW-.U=QG^:;_$K;)]"%0%?"?220.5#,_ MSK"J,GI"9>S^P\,3I
M@?K>U,$96Q'O?/+6>R]51C\7Y!*$%LQQQM -)ET1Q*NO(>A>B"/]CT[WZ=EN
MAEFD9UMZ>KLOD.\*Y%$@WY:8)1]*W,-\+))L>BK!='&:+*KUJ.(D;[SKP#[0
M^";_X/.T/S'3<67163O_LK'_K=8.?"K)C1^AWG^PU1#0NG#\Y,]F'K/9<'I8
M?A!9OW'U%U!+ P04    " "3@$U0W G!1,0!   W!   &0   'AL+W=O<FMS
M:&5E=',O<VAE970S-RYX;6QU5.MNVR 4?A7$ Y0$QUD4V9::3M,FK5+4:MMO
M8A]?5"X>X+A]^P)V/2]C?PP<OLLYP'$V*OUB6@"+7@67)L>MM?V1$%.V()BY
M4SU(MU,K+9AU2]T0TVM@52 )3NAFLR>"=1(768B==9&IP?).PEDC,PC!]-L)
MN!ISO,4?@:>N::T/D"+K60//8'_T9^U69%&I.@'2=$HB#76.[[?'4^KQ ?"S
M@]&LYLA7<E'JQ2^^53G>^(2 0VF] G/#%1Z <R_DTO@]:^+%TA/7\P_U+Z%V
M5\N%&7A0_%=7V3;'!XPJJ-G [9,:O\)<3XK17/QWN )W<)^)\R@5-^&+RL%8
M)685EXI@K]/8R3".T\[^,-/B!#H3Z$(X!!\R&87,/S/+BDRK$>GI['OFKWA[
MI.YL2A\,1Q'V7/+&1:]%DM",7+W0C#E-&+K";!<$<>J+!8U9G.@_=!JG)]$,
MDT!/UG3Z'X%=5& 7!'9_E9C<E!C#[.(F:=0DC0BD-R8QS/[&A*PN3H!NPI,U
MJ%2##.VRBBY=<4_#Q?^!3RWUR'3328,NRKKG$RZY5LJ"2V5SYW)I71<O"PZU
M]=-/;JZGMSPMK.KG-B7+OZ)X!U!+ P04    " "3@$U0#SQ$PK,!  #2 P
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
MLY=SZ\^&%L,RU<@Z6HL_4$L#!!0    ( ). 35"4U6TVMP$  -(#   9
M>&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;&U3VV[<(!#]%<0'A%U[G40KVU(V
M4=1*K;1*U?:9M<<V"C NX'7Z]P7LN&[J%V"&<\Y<&/(1S:OM !QY4U+;@G;.
M]4?&;-6!XO8&>]#^ID&CN/.F:9GM#? ZDI1DR6YWRQ07FI9Y])U-F>/@I-!P
M-L0.2G'S^P02QX+NZ;OC1;2="PY6YCUOX1NX[_W9>(LM*K50H*U 30PT!7W8
M'T^'@(^ 'P)&NSJ34,D%\348G^N"[D)"(*%R08'[[0J/(&40\FG\FC7I$C(0
MU^=W]>=8NZ_EPBT\HOPI:M<5])Z2&AH^2/>"XR>8Z\DHF8O_ E>0'AXR\3$J
ME#:NI!JL0S6K^%04?YMVH>,^3C=9,M.V"<E,2!;"?8S#ID Q\R?N>)D;'(F9
M>M_S\,3[8^)[4P5G;$6\\\E;[[V6:9;E[!J$9LQIPB0KS'Y!,*^^A$BV0IR2
M_^C)-CW=S#"-]'1-3[-M@<.FP"$*'/XI\?9#B5N8NP]!V*JG"DP;I\F2"@<=
M)WGE70;V(3XB^PN?IOTK-ZW0EES0^9>-_6\0'?A4=C=^A#K_P19#0N/"\<Z?
MS31FD^&PGW\06[YQ^0=02P,$%     @ DX!-4-EE70[L 0  9@4  !D   !X
M;"]W;W)K<VAE971S+W-H965T-#(N>&UL=53;CILP$/T5Q >L";?0B"!MMJI:
MJ96BK;I]=LAPT=J8VB9L_[ZV(932V9?8'I_+C,E,/@KYJAH [;UQUJFCWVC=
M'PA190.<J@?10V=N*B$YU>8H:Z)Z"?3J2)R1, A2PFG;^47N8F=9Y&+0K.W@
M+#TU<$[E[Q,P,1[]G7\//+=UHVV %'E/:_@.^D=_EN9$%I5KRZ%3K>@\"=71
M?]P=3IG%.\!+"Z-:[3U;R46(5WOX<CWZ@4T(&)3:*E"SW. )&+-")HU?LZ:_
M6%KB>G]7_^1J-[5<J((GP7ZV5]T<_<SWKE#1@>EG,7Z&N9[$]^;BO\(-F(';
M3(Q'*9AROUXY*"WXK&)2X?1M6MO.K>-TD]YI."&<">%"R!R!3$8N\X]4TR*7
M8O3D]/8]M9]X=PC-VY0VZ)["W9GDE8G>BBC)<G*S0C/F-&'"%6:W((A17RQ"
MS.(4_D</<7J$9A@Y>K2FQ^\(Q*A [ 3B?TK\L"D1P:0!;I*@)@DBL-N88)AW
M*DE1DQ01B#8F&";&3?:HR1X12#8F&";%33+4)$,$]AL3#)-M3,CJ?\Y!UJ[#
ME5>*H7/3915=ALACZ/KD+WR:0-^HK-M.>1>A3;>YGJB$T&!2"1[,IVO,T%L.
M#"IMMWNSEU/K3P<M^GFJD66T%G\ 4$L#!!0    ( ). 35 ?5)#7LP$  -(#
M   9    >&PO=V]R:W-H965T<R]S:&5E=#0S+GAM;&U3VXZ<, S]E2@?L %F
MNMN. &EGJZJ56FFT5;?/&3 0;2XT"</V[^L$AM(I+\0V/L?'CI./QKZZ#L"3
M-R6U*VCG?7]@S%4=*.[N3 \:_S3&*N[1M2USO05>1Y"2+$N2>Z:XT+3,8^QD
MR]P,7@H-)TO<H!2WOX\@S5C0E%X#SZ+M? BP,N]Y"]_!_^A/%CVVL-1"@7;"
M:&*A*>AC>CCN0WY,>!$PNI5-0B=G8UZ#\Z4N:!($@83*!P:.QP6>0,I A#)^
MS9QT*1F :_O*_BGVCKV<N8,G(W^*VG<%?4])#0T?I'\VXV>8^WE'R=S\5[B
MQ/2@!&M41KKX)=7@O%$S"TI1_&TZA8[G./-?8=N ; 9D-P V%8K*/W+/R]R:
MD=AI]CT/5YP>,IQ-%8)Q%/$?BG<8O92[^P\YNP2B.><XY62KG'3)8,B^E,BV
M2ARS_^#9-GRWJ7 7X;NUPH=DFV"_2;"/!/M_"-*;%K=R;E6RU4P5V#9NDR.5
M&73<Y%5T6=C'+-[)W_1IV[]QVPKMR-EXO-DX_\88#R@EN<,5ZO"!+8Z$Q@?S
M 6T[K=GD>-//+X@MS[C\ U!+ P04    " "3@$U088YZ-+<!  #2 P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6QM4]MNW" 0_17$!X1=V]NL5K:E
M;*JJE5IIE:KM,VN/;11@7,#K].\+V''<U"_ #.><N3#D(YIGVP$X\J*DM@7M
MG.M/C-FJ \7M'?:@_4V#1G'G3=,RVQO@=20IR9+=[@-37&A:YM%W,66.@Y-"
MP\40.RC%S9\S2!P+NJ>OCB?1=BXX6)GWO(7OX'[T%^,MMJC40H&V C4QT!3T
M87\Z9P$? 3\%C'9U)J&2*^)S,+[4!=V%A$!"Y8("]]L-'D'*(.33^#UKTB5D
M(*[/K^J?8NV^EBNW\(CREZA=5] C)34T?)#N"<?/,-=SH&0N_BO<0'IXR,3'
MJ%#:N))JL [5K.)34?QEVH6.^SC='+*9MDU(9D*R$(XQ#IL"Q<P_<L?+W.!(
MS-3[GH<GWI\2WYLJ.&,KXIU/WGKOK4SOTYS=@M",.4^89(79+PCFU9<0R5:(
M<_(?/=FFIYL9II&>KNG9<5L@VQ3(HD#V3XG9NQ*W,(=W0=BJIPI,&Z?)D@H'
M'2=YY5T&]B&);_(&GZ;]&S>MT)9<T?F7C?UO$!WX5'9W?H0Z_\$60T+CPO'>
MG\TT9I/AL)]_$%N^<?D74$L#!!0    ( ). 35!KLSKW-@(  )D'   9
M>&PO=V]R:W-H965T<R]S:&5E=#0U+GAM;(U5[8Z;,!!\%<0#G&V< #D1I%ZJ
MJI5:*;JJ[6\GV01T!E/;"=>WKVT(2L Y\2?^FAW/>,-NU@KYI@H ';Q7O%;K
ML-"Z>49([0NHF'H2#=3FY"ADQ;19RA-2C01V<$$51Q'&,:I868=YYO:V,L_$
M6?.RAJT,U+FJF/SW ERTZY"$UXW7\E1HNX'RK&$G^ GZ5[.59H4&ED-90:U*
M40<2CNOP$WG>D,@&.,3O$EIU,P^LE9T0;W;Q[; .L54$'/;:4C S7& #G%LF
MH^-O3QH.=]K V_F5_8LS;\SLF(*-X'_*@R[681H&!SBR,]>OHOT*O:%E&/3N
MO\,%N(%;)>:.O>#*_0;[L]*BZEF,E(J]=V-9N['M3N)KF#\@Z@.B(8 L/@R@
M?0 =!:!.F;/ZF6F69U*T@>RRU3#[IR#/U#SFWFZZMW-GQJTRNY><)G&&+I:H
MQ[QTF.@&$]TC-E/$8D @<_\@(O**B%PXO;T@3?T$U$M '<'BSD4R<M%A$H>I
M'88DF(R\;J8H&F&Z](M9>,4L/&+2D9@.L[P70\?/.D51$N,'8I9>,4N/F)6?
M(/82Q/-SDW@)DAFY27S/,<G-%$7QP]RD7C'IC-RDLW(S146KA[E9><6LIF)2
M["<@V/_UXOG9(0\* )F1GQYTZQ:/2\ 48IK)(SO^.D"B&>GI0<E'6J80CQ9T
M4R-MT_K!Y*FL5; 3VI1;5Q2/0F@PC/C)^"I,GQP6'([:3A,SEUVSZ!9:-'TC
M1$,WSO\#4$L#!!0    ( ). 35![RAXRB@,  -<.   9    >&PO=V]R:W-H
M965T<R]S:&5E=#0V+GAM;(U7VV[C-A#]%4'O67%(\:+ -A!;6+1 "P1;M/NL
MV+0MK"2Z$AUO_[[4)8Y-CI)]L23ZS.$94CK#65Q,^Z,[:FVCGW75=,OX:.WI
M,4FZ[5'71??%G'3C_MF;MBZL>VP/27=J=;$;@NHJH82(I"[*)EXMAK'G=K4P
M9UN5C7YNH^Y<UT7[WUI7YK*,(7X;^%8>CK8?2%:+4W'0?VG[]^FY=4_)E657
MUKKI2M-$K=XOXR=XS.D0,"#^*?6EN[F/^E1>C/G1/_R^6\:D5Z0KO;4]1>$N
MKWJCJZIG<CK^G4CCZYQ]X.W]&_O7(7F7S$O1Z8VIOI<[>US&*HYV>E^<*_O-
M7'[34T(\CJ;L_]"ONG+P7HF;8VNJ;OB-MN?.FGIB<5+JXN=X+9OA>IGXW\+P
M #H%T&L B \#V!3 W@/2#P/2*2#U I(QE6%M\L(6JT5K+E$[;N^IZ-\B>$S=
MZF_[P6&QA__<\G1N]'7%%"R2UYYHPJQ'#+W!O",2QWZ=@F)3K&D03N\GV(2(
M]!Z1AP@@ A?!T#S90,#N\J0X08H2I -!>D? O(4:,7+ -)-*0O!9.#H+1V9)
M<0*!$@@D3XX32)1 (@J$E^>(X3=Y9E(RZ>VJ#%9# ..9M[,ABC+!%2Y9H9(5
M(MD3LU:!9.+)_121APB C,V\11DJ-4.D*D]J]JG4$.&$>!]5_A'-G5(@N#,0
M1&OF6P,)9J%*JLRSD V"@TPQZ>%R#.>^=#+S"L.,J4$H/2.^= BF>J"IE)+[
MVA$@"!#27W$,J("*;$8\:I=/0!'Q@273<"JFB/\)8C#@P'SA&!L7<D8W[K#
M$-W4U\W"_64I284O/,0A%I,CL'N/N1>..SL@UIZQ&0K<MH'_NNT";MP@?L%X
M)]!MOMPMLN\/""QUKV&P[2&,2B'G4L?K!6 %PW=?""M&H/E32(Y !%$SI0+P
M6@%8L0A<+71Z"3PTAA F5"J%+SN$\313,V<HP L'()4CM+30\Q^$HA#8 H+C
MSM'\4Q>&2]VQ9^[XAQ<2BA22P-!H:/P/E/@OT@:# 5'>SN0H&X695X7B581B
M5<0WM ET>W[A'(+ZA\'"#S='8/<?[J@[N3G=U[H]#)U3%VW-N;']*?EF]-J=
M/=&^._#&UZYK&WNL=YJQY?NS: ]ETT4OQKK>8^@0]L98[522+VY=CZ[+O#Y4
M>F_[6^GNV['5&A^L.4UM9'+M95?_ U!+ P04    " "3@$U0VR^%);4"  !I
M#   &0   'AL+W=O<FMS:&5E=',O<VAE970T-RYX;6R55^V.VC 0?)4H#W")
MG?"I@ 175:W42NBJMK\-&!)=$J>V@>O;UW9R*0=C*?PAMC,[NV,\>,DN0KZJ
MG',=O%5EK19AKG4SCR*URWG%U)-H>&W>'(2LF#93>8Q4(SG;NZ"JC&@<CZ.*
M%76XS-S:1BXS<=)E4?.-#-2IJIC\N^:EN"Q"$KXOO!3'7-N%:)DU[,A_</VS
MV4@SBWJ6?5'Q6A6B#B0_+,(5F:\3:@,<XE?!+^IJ'%@I6R%>[>3K?A'&MB)>
M\IVV%,P\SOR9EZ5E,G7\Z4C#/J<-O!Z_LW]VXHV8+5/\692_B[W.%^$T#/;\
MP$ZE?A&7+[P3- J#3OTW?N:E@=M*3(Z=*)7[#'8GI475L9A2*O;6/HO:/2_M
MFW3:A>$ V@70/F#4:FD3N<H_,<V6F1270+:;WS#['9,Y-7NSLXMN*]P[4[PR
MJ^=E,DNSZ&R).LRZQ= K#.D1D6'O4U"48DWOPBD.3V"%B0M//U0XP@0I)$@=
M0?*!8(P)1I!@!"J8W.P1PDQQDC%,,@8$,TPP@023X3*GD&!Z5T$:QS<R$<9S
M&&8PR0P0>(X#B?&)C8<+)9Y#3P9(A:#$DP>>_!6A@"+U4.#33Y('U.+S3](A
M:A'(IQ;;A-Q[((T]3B78!&3\@%IL S(9HA:!?&JQ6PBR@J]4[ 4R&ZZ68C/0
M>(!:")IX\F#'4&0&S^\;Q6:@] &UV ST_BX :A'(=V%AQU!D!L^/,<5FH*,'
MU&(ST/LK :A%()]:[!@*S$!B#P4V YT^H!:;@:*;X4XM GG4)M@Q"3 #\5%@
M,R1DN-H$FR%!-\.M6@0BMY=E=-7I55P>78^K@ITXU:[!OEKM^^B5:Z.C__"V
M"?_.Y+&H5; 5VO2;KBL\"*&YJ25^,N<Y-WU_/RGY0=OAQ(QEV_RV$RV:KK&/
M^G\7RW]02P,$%     @ DX!-4 (?0UP% @  9 4  !D   !X;"]W;W)K<VAE
M971S+W-H965T-#@N>&UL?53M;ML@%'T5Y <H_L!I%]F6FD13)VU2U&G=;^+<
MQ%;!N$#B[NT'V'']I?PQ<#GGW',QW*01\ET5 !I]<E:IU"NTKM<8J[P 3M6#
MJ*$R.R<A.=5F*<]8U1+HT9$XPZ'OKS"G9>5EB8OM99:(BV9E!7N)U(5S*O]M
M@(DF]0+O%G@MSX6V 9PE-3W#;]!_ZKTT*]RK'$L.E2I%A22<4N\Y6.]BBW>
MMQ(:-9@C6\E!B'>[^'%,/=\: @:YM@K4#%?8 F-6R-CXZ#2]/J4E#N<W]>^N
M=E/+@2K8"O:W/.HB]9X\=(03O3#]*IH7Z.J)/=05_Q.NP S<.C$Y<L&4^Z+\
MHK3@G8JQPNEG.Y:5&YM._T9;)H0=(>P)P>HN(>H(T1>!W"60CD F!-R6XLYF
M1S7-$BD:)-N_6U-[B8(U,:>?VZ [;+=GCD>9Z#4C093@JQ7J,)L6$PXP08_
M1KU/$2ZEV(0S>CA.L)TCR!BQFR,"?[5L(EJL,W("T:A.LBQ %@6($R C@7AR
M4"WFT6$JAWDBT;=)L7.0/RGV'F+D-%YT&B\X74V<QK,48>#[$R/;.2J( W]J
M!@_N&@=Y=N]8H5Q<*FW_V2#:MXKGT-[527QC6DC[XK]DVO[SB\IS62ET$-J\
M!'=?3T)H,";]!^.R,"VO7S X:3M]-'/9/OQVH47=]33<-];L/U!+ P04
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
MX"*#0#)FQ*6CR$KA8BRA"Q?!;A'+!_*L@"B4PL50L*=4!Z W 1@<@($!F [
M^I6F5C-<"$5PBA!,$3I\ANV&=YA88ZI.!D8(64UW43C$:$!,!(J)7#$TM,1T
MF+ OAJ;,4>/",$5L2$X,RHG=]L>))2=V\Y#0;0X P\R!+6.GARE.AD0GH.@$
MF%!KT<P2)TUB2YF[&)H0:V4L7) JRVK1\GZVFY)2L*046!:6DEGJ-)BBH2P8
MP1:(@#RQ[8$(F,ET,-. V6(@4V)GPDZF9#@1:*?/F "); LQH+27"#W9EFI
M?37VXKT+N54+^R6FKEHV% )V3,P>]UP,.R(&+)$YGSD(Y/0, @U\03#LB!BP
M1#94#^QB./Z/EL">@@%3<5L"@4*[)1 HLA<2!(H'%,.6@0'/Z!G3[4X$M@."
M'N\;@=]S KSGS#9C ^K[(R-12JWV K PQ*DU"PL(1E-BOZN/)5T!,!)'L;V&
M@]XNL^3U3I\1&F\MCI5L=U"]T<LYY)FTNU1K?(Y'R^XT<0W3'6Z^9_4NKQKO
M34BU!]8[U:T0DBN5Z$F]9WMUGKH\%'PKV]M8W=?=H:)[D.)@#DS!Y=0V_0=0
M2P,$%     @ DX!-4.([MXT: P  4 P  !D   !X;"]W;W)K<VAE971S+W-H
M965T-3(N>&ULE5?K<J(P&'T5A@=8<H$ '76F]JKMSG2ZL[N_J49E"L2%J-VW
MWP0B2OALV3]"PCDGWRW)Y^@@RO=JP[ET/O*LJ,;N1LKME>=5BPW/D^J;V/)"
M?5F),D^D&I9KK]J6/%G6I#SS"$+,RY.T<">C>NZEG(S$3F9IP5]*I]KE>5+^
MG?),',8N=H\3K^EZ(_6$-QEMDS7_P>7/[4NI1EZKLDQS7E2I*)R2K\;N-;YZ
MQE03:L2OE!^JLW='N_(FQ+L>S)9C%VF+>,874DLDZK'G-SS+M)*RXX\1==LU
M-?'\_:A^7SNOG'E+*GXCLM_I4F[&;N0Z2[Y*=IE\%8=';AP*7,=X_\SW/%-P
M;8E:8R&RJOYU%KM*BMRH*%/RY*-YID7]/!C](PTF$$,@+4&M_1F!&@(]$?Q/
M";XA^$,)@2$$0PG,$-A00F@(X5!"9 C14$)L"/%0 D;'S*$3A7U.:9.-!Z]R
M3#<F%L5K"JNNU-M$)I-1*0Y.V6RV;:+W-+Y2+"6N9^O:KS^J:JW4['[B!VCD
M[;62P4P;##G'$-S%S/N8$\)3)K1V$-".*>GQ27>%FS[")Q;F%L+0+N8.POA=
MS#V Z2(>()6@BWF$,*R+F4&8T(KME[%Y^M+>YSX"(P9GB,*50FL%VJF4"SGV
M806_5O ["I8GTP83UICB&+,PC*QBZ,-(%-,XMNH!@#&$0VO1.P!&0\:L&K_O
MPVCD,V:E_0%:U ^HE9%' $88Q5;R9P ,AXA9 9GW89A@'V%K+S\!.!23(++K
MI8^+(AKC"PD/X(0'0,(IK,!@!3:\Z$)8(01LL)R=-YC@S%F&*,-6C)_ZL("A
M. Y@>R+8G@BPYX)"#"O$PV.B+R'PU$<#HF) Y_[2( R975(0#F,6Q!=LNG03
M8<"F"T<4AF^1:TS^(S87SCE,A\2&]K=EH+:O?3!#.!S'%%DV>6<7=L[+==V:
M5LY"[ JI_3F;;=O?:Z(O?&M^BJ]F&)B?ZW:Y;A!.\DVO_3TIUVE1.6]"JD:C
M[@560DBNS$??5%(WJKUO!QE?2?T:JO>RZ7&;@11;T[][[9^(R3]02P,$%
M  @ DX!-4%\U6J83 @  ? 4  !D   !X;"]W;W)K<VAE971S+W-H965T-3,N
M>&UL?53;CILP$/T5Q >LN9ID19 VJ:I6:J5HJ[;/#ID$M#:FMA.V?U]?6)8%
MJR^Q/3[GS)F)F7+@XD4V "IX9;23N[!1JG]$2-8-,"(?> ^=OKEPP8C21W%%
MLA= SI;$*$JB""-&VBZL2AL[BJKD-T7;#HXBD#?&B/B[!\J'71B';X'G]MHH
M$T!5V9,K_ #ULS\*?4*3RKEET,F6=X& RRY\BA\/V. MX%<+@YSM U/)B?,7
M<_AZWH61,004:F44B%[N< !*C9"V\6?4#*>4ACC?OZE_MK7K6DY$PH'3W^U9
M-;MP$P9GN) ;5<]\^ )C/7D8C,5_@SM0#3=.=(Z:4VE_@_HF%6>CBK;"R*M;
MV\ZN@[LITI'F)R0C(9D(,?XO(1T)Z3LAL\4[9[;43T21JA1\"(3[LWIBWD3\
MF.IFUB9H>V?O=+521^]5EA<ENANA$;-WF&2&B2<$TNI3BL278I^LZ,G'!(<U
M(O,G2+TUI):>SOUM<[] YA7(K$ V$\#+'CA(82&=RY'A&,>+2CPPG,08^]WD
M7C?YRDV6;Q9V'":?Y<DW4;0PLP;A8@;Z8 5[K6"/E>W""EZ5C+?;95_6H+S(
MEUU!LT?+0%SM]RV#FM\Z99['+#J-D*?$//I%?*]'BYL$[S)N+GTGXMIV,CAQ
MI3\I^_ OG"O0'J,'W:E&C\+I0.&BS+;0>^$&@CLHWH^S#DT#M_H'4$L#!!0
M   ( ). 35!46T8ES@$  %L$   9    >&PO=V]R:W-H965T<R]S:&5E=#4T
M+GAM;'U4VXZ;,!3\%<L?@+DE-!$@-:FJ5FJE:*NVSPX< EI?J.V$[=_7-BQB
M6=27V,>>F3.#[>2#5,^Z!3#HA3.A"]P:TQ\)T54+G.I ]B#L3B,5I\:6ZD9T
MKX#6GL09B<-P3SCM!"YSOW9192[OAG4"+@KI.^=4_3T!DT.!(_RZ\-3=6N,6
M2)GW] 8_P/SL+\I69%:I.PY"=U(@!4V!/T;'<^KP'O"K@T$OYL@EN4KY[(JO
M=8%#9P@85,8I4#L\X R,.2%KX\^DB>>6CKB<OZI_]MEMEBO5<);L=U>;ML ?
M,*JAH7=FGN3P!:8\.XRF\-_@ <S"G1/;HY),^U]4W;61?%*Q5CA]&<=.^'$8
M=[+]1-LFQ!,AG@E1^E]",A&2%8&,SGS43]30,E=R0&H\K)ZZ.Q$=$_LQ*[?H
MOYW?LVFU77V4Z3[,R<,)39C3B(D7F/@MXOP>D<X(8OO/)N)-$[&G)PMZ=-AM
M"R2; HD72-^DB%8I1LS>8X3'[';!.L@&* D.VU;232OIAI55E].(R19=HB1=
M.4G?.3ED0;9R0A;'[)[==ZING=#H*HV],?Y<&RD-6,$PL'>YM2]]+A@TQDTS
M.U?C?1\+(_OI*9/Y_Z3\!U!+ P04    " "3@$U061"UYU<"  !&!P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6Q]5>]NFS 0?Q7$ ]1@((:((#6)
MIDW:I*C3NL\.<0*JP<QV0O?VLPUAQ+C]$NSC]^?NB,]YS_B;J B1WGM#6['Q
M*RF[-0"BK$B#Q1/K2*O>G!EOL%1;?@&BXP2?#*FA  ;!"C2X;OTB-[$#+W)V
ME;1NR8%[XMHTF/_=$LKZC1_Z]\!+?:FD#H B[_"%_"3R5W?@:@<FE5/=D%;4
MK/4X.6_\YW"]#P--,(C7FO1BMO9T*4?&WO3FVVGC!SHC0DDIM016CQO9$4JU
MDLKCSRCJ3YZ:.%_?U;^8XE4Q1RS(CM'?]4E6&S_UO1,YXRN5+ZS_2L:"$M\;
MJ_].;H0JN,Y$>92,"O/KE5<A63.JJ%0:_#X\Z]8\^^$-NM/<!#@2X$2 R:>$
M:"1$$R&,/R7$(R&V"& HQ?1FCR4N<LYZCP^?M\/Z7Q2N8]7]4@=-L\T[U1ZA
MHK<B7D4YN&FA$;,=,'"&"2<$4.J3!719;.&"#A\-=DM$_(C8+Q%AL'(G$3GK
MC(Q -!?(,K= [!2(C4#\T"@KR^V 00;3&DR6Q(';)7&Z) Z7Q')Q83[HQ<II
MLG(((,O$A4G=)LAI@AP"F66"%OU*$4)NE]3IDBY=4&"Y#)ADYA('V0<-RYPN
MF<,EM%RRA4L(4V0=I5VVJ#B$66!EO%^BTCGH(6,U=)WG.G#D#.V#'2R,D@A"
M^PN V3!I"+^802V\DEU;J0_E+#I=!L]0#R,KOM67A!E2_V6&&^8'YI>Z%=Z1
M237JS$ Z,R:)RC)X4DVMU*4V;2@Y2[U$:LV'R3YL).O&6PM,5V?Q#U!+ P04
M    " "3@$U0["K_E5L"    "   &0   'AL+W=O<FMS:&5E=',O<VAE970U
M-BYX;6Q]E=N.FS 0AE\%\0 +MCE&"5(W5=5*K11MU>VUDS@)6L#4=L+V[6L;
M@EA[TIOXP#__-P/Q>#UP\28OC*G@O6TZN0DO2O6K*)*'"VNI?.(]Z_23$Q<M
M57HISI'L!:-'&]0V$8[C+&IIW875VN[M1+7F5]74'=N)0%[;EHJ_SZSAPR9$
MX7WCI3Y?E-F(JG5/S^PG4[_ZG="K:'8YUBWK9,V[0+#3)OR$5EM$3(!5O-9L
MD(MY8$K9<_YF%M^.FS V&;&&'92QH'JXL2UK&N.D\_@SF88STP0NYW?W+[9X
M7<R>2K;ES>_ZJ"Z;L B#(SO1:Z->^/"5306E83!5_YW=6*/E)A/-./!&VM_@
M<)6*MY.+3J6E[^-8=W8<)O][&!R IP \!Z#DOP%D"B!.0#1F9DO]3!6MUH(/
M@1B_5D_-GP*MB'Z9![-IWYU]IJN5>O=6)3E91S=C-&F>1PU>:/!'Q=97)+,B
MTOPY"0PF@6TX682CLH0-"&A K$'RH8K$J6+4Y%;364U1D@RF)" E 2BI0QDU
MZ9*",P)34I"2 I3,H:0>)4]+#%,RD)(!E-RA9#X%)2E,R4%*#E *AY)[E(S$
M!4PI0$H!4$J'4G@4DI1I#F-*$%/ZF")V,*7_R@B.$8Q!,7PD8P"$W#,9>R2$
M$A(_(#TX_ @@89>$_ ^$\OQ13? )1Q@@>7T&^Z0B(6ZOP=Y!?E0UW"P0T"T*
MMUL@OUVD28D+-QE?YB83+5JQN1M_4'&N.QGLN=)=W?;>$^>*:;OX2==^T=?Q
MO&C829EIKN=BO)/&A>+]=-]&\Z5?_0-02P,$%     @ DX!-4+,+*TR4 P
M:A   !D   !X;"]W;W)K<VAE971S+W-H965T-3<N>&ULE5AM;^,V#/XKAK_W
M+%&2915)@+6]80,VH+AAVV<W41KC;"NSW>;V[R>_-)>(5-?[4EL*R8>D^)!6
M5R?7?>T/U@[)MZ9N^W5Z&(;C;9;UVX-MROZ3.]K6_[)W75,.?MD]9_VQL^5N
M4FKJ#!C+LZ:LVG2SFO8>N\W*O0QUU=K'+NE?FJ;L_KVSM3NM4YZ^;7RIG@_#
MN)%M5L?RV?YAAS^/CYU?96<KNZJQ;5^Y-NGL?IW^Q&\_"S4J3!)_5?;47[PG
M8RA/SGT=%[_NUBD;/;*UW0ZCB=(_7NV]K>O1DO?CG\5H>L8<%2_?WZS_/ 7O
M@WDJ>WOOZK^KW7!8IT6:[.R^?*F'+^[TBUT"4FFR1/^;?;6U%Q\]\1A;5_?3
MWV3[T@^N6:QX5YKRV_RLVNEY6NR_J=$*L"C 68'K=Q7$HB"^*\AW%>2B(#^J
MH!8%%2AD<^Q3,A_*H=RL.G=*NKD>CN58=OQ6^>/:CIO3Z4R_^7SV?O=U(PNU
MREY'0XO,W2P#5S+YM<P](7,M\8 EX%KB,Y;@[#M.YN,X!P-D,# 9$%>.:MJ
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
MU\?OQL>;MMJ/W\2CTX?YQ7]02P,$%     @ DX!-4);?LJ"G P  ) \  !D
M  !X;"]W;W)K<VAE971S+W-H965T-3DN>&ULC9?A<J(P$,=?A>$!) F00$>=
M.6VMMMY,YV[N[C/5J$R!>("U]_87(%K<;%N_",3??W>SNX1D>%3E2[63LG;>
M\JRH1NZNKO<WGE>M=C)/JH':RT+_LU%EGM3ZL=QZU;Z4R;H5Y9G'".%>GJ2%
M.QZV8T_E>*@.=986\JETJD.>)^6_B<S4<>12]S3P(]WNZF; &P_WR5;^E/6O
M_5.IG[RSE76:RZ)*5>&4<C-RO]&;)6T%+?$[E<>J=^\T4WE6ZJ5Y6*Q'+FDB
MDIE<U8V)1%]>Y51F66-)Q_'7&'7//AMA__YD?=9.7D_F.:GD5&5_TG6]&[F1
MZZSE)CED]0]UG$LSH=!US.R7\E5F&F\BT3Y6*JO:7V=UJ&J5&RLZE#QYZZYI
MT5Z/QOY)A@N8$;"S0/O^3. ;@?\N"#X5!$807"L(C2"\5L"-@%\K$$8@KA5$
M1A!=*XB-(+Y60,FI<N1=PC^7G(M-K_9R*C=E0.)UC=5VZFU2)^-AJ8Y.V;UL
M^Z1YI^F-5FGCS6C;^^V?NELK/?HZ#FDT]%X;2X:9= SK,0&CE\R#S;P3G@[A
M' =#XY@P2\\N/4QM(F" N<48_Y*YPYC@DIDAS"5QCUD)+YDYQO!+9H$Q N3V
MR]P\?AGOTB8HX7B%?+Q3_-:"WX^"^+B% +<0M!:"BQC 7"<=(UJF..5,"-"2
M4QMC4>S',>@'!..$"I"^.P3S!>>@QV<VYD<!YZ#L]YC3(/1!1>8(QKA/04(6
M"$8%X2 A#S9&&0T():!3$([$+(Q@O]A<%/DQ_>"E#O&"AU\7?-DQ8<]13"BG
M#'?$<4?<=@17J FW$TE( *BI3?EAZ,-UQJ8$@S.[0QRRD(&"S! JI#$(ZQX)
MB\8,M/O<IB@)!+"UP!*A.P4TE$U%H4]@.R&4B&.0KB6W:AR2F =XB05>8O%U
MB9?"BD9_S"*!^XEP/Q'B!WQ"'CHFZE=C0, ;](A!\-.ZM"$ZB$(\X!@/.+8"
MUOT#W'1,LR7I^XEP/PV&;A4(DAHPZXF!^C,B _!F3!&(#J"I6]04_,C>X0Y!
MGF<H%0'J'HV+@FZ>H[9\N&[C<5G;)IMB@QC8>D0HW7!P)344J++XH/WI1QM"
M:O<37+26!@)]"QQYO4UH+LMM>]RJG)4Z%'6SD>B-GH]TWUBSB07C$WJSH,CX
M0W,$;#>][^:[\^/WI-RF1>4\JUIOGMO][4:I6NK8R4"O0SM]9#T_9')3-[="
MWY?=N:U[J-7>G$F]\\%X_!]02P,$%     @ DX!-4#+]WE7H 0  [@0  !D
M  !X;"]W;W)K<VAE971S+W-H965T-C N>&UL?53M;ILP%'T5Q /4 6.21H"T
M9*HV:9.B3NM^.W )J 93VPG=V\\?%%%B[0_VO3[G^!PPSD8N7F4#H(+WCO4R
M#QNEACU"LFR@H_*!#]#KE9J+CBI=B@N2@P!:65+'4+S9I*BC;1\6F>V=1)'Q
MJV)M#R<1R&O74?'W (R/>1B%'XWG]M(HTT!%-M +_ +U>S@)7:%9I6H[Z&7+
M^T! G8=?HOV1&+P%O+0PRL4\,$G.G+^:XGN5AQMC"!B4RBA0/=S@"(P9(6WC
M;=(,YRT-<3G_4'^RV766,Y5PY.Q/6ZDF#W=A4$%-KTP]\_$;3'E(&$SA?\ -
MF(8;)WJ/DC-IGT%YE8IWDXJVTM%W-[:]'4>WDI")YB?$$R&>"5'R7P*>"'A%
M0,Z9C?J5*EID@H^!<!]KH.9,1'NL7V9IFO;=V36=5NKNK2!QE*&;$9HP!X>)
M%YCX,^)XCTAF!-+[SR9BKXG8TO&"GN[\?.SE8\M//H5863PXS-9B>A=B%Y-5
M#@_H\3'V6TF\5A*/%;RRXC!DL4M$DCO'1P\LC=(D\MLA7CODSDZ$5Z$/Y"YT
M1+8XV:[L>&!IDF*\LH,6)\_<!#^IN+2]#,Y<Z4-LCUK-N0(MN7G0FHV^?.:"
M0:W,=*OGPOV"KE!\F&X7-%]QQ3]02P,$%     @ DX!-4*+PB 0R P  -0T
M !D   !X;"]W;W)K<VAE971S+W-H965T-C$N>&ULE5=M;YLP$/XKB!]0[+.-
MH4HB-8VF3=JDJM.VSS1Q$E3 &3A)]^]G7II2^ZC2+P&;YYY[[N NY]E9U\_-
M7BD3O)1%U<S#O3&'VRAJUGM59LV-/JC*/MGJNLR,7=:[J#G4*MMT1F41 2%Q
M5&9Y%2YFW=Y#O9CIHRGR2CW407,LRZS^MU2%/L]#&KYN/.:[O6DWHL7LD.W4
M3V5^'1YJNXHN+)N\5%63ZRJHU78>WM';%?#6H$/\SM6Y&=T';2A/6C^WBV^;
M>4A:1:I0:]-29/9R4O>J*%HFJ^/O0!I>?+:&X_M7]B]=\#:8IZQ1][KXDV_,
M?AXF8;!1V^Q8F$=]_JJ&@$08#-%_5R=56'BKQ/I8ZZ+I?H/UL3&Z'%BLE#)[
MZ:]YU5W/_9/XU0PW@,$ +@8T_M" #0;LS8!_:, ' ^X81'TH76Y6F<D6LUJ?
M@[I_O8>L_8KH+;?97[>;7;*[9S8]C=T]+03P671JB0;,LL? "$,OB,BR7UP
MYF()GCF\=W#O(QP)*Q]!28R+8&B<K"-@(P*63A!PE(!W!/Q=HH23J!XC.TS5
MJQ2QC&,G7 0&0%."RQ&H'('(<?PL>XP8^4F(E(FCQD?%@L8<%Q.C8F)/C*2.
MEMCS(D6:N%I\E) $)MZ31+5()#'2$2/]D!-"'"T^B$LR\8X25$J"2'$B7B:>
M%^#<T^*CJ-7BH%8)\EVQ*<DI*CE%)*>.Y-07(SS%" @\P2E2+U-Z*<'[%_$5
MLRF*B19(K^\-%&UQ=Q2NZ X#Z%U.F/!J (,!8^F$(+S=4>8)8ND4!=[P*/]$
M6O F1;$NY:4%:4 \Y6Y6?)0 -O$_1/$V1?T^)28I\.Y"Y2>2@G<%BK4%+RE^
MQ<L4*'.SXL-B LE43'C-4[_H62IP"L"K$,CU:0&\"H%>D98!-([72F5N"2$P
M2"29FEKPF@:DIAE,4.!5")^8.@"O0KAF[@!DHI I<[\6#";B4?9Z0=%H=BQ5
MO>OF\B98ZV-EVAELM'N9_>^@G3V=_:4]$_03_!M-?Z#XD=6[O&J")VWL9-O-
MGUNMC;(JR8U];7M[AKDL"K4U[:VT]W4_R/<+HP_#(26ZG)06_P%02P,$%
M  @ DX!-4%>4A[<Z @  C08  !D   !X;"]W;W)K<VAE971S+W-H965T-C(N
M>&ULA559CYLP$/XKB/<NA[D2$:1-5E4KM5*T5=MGATP"6H.I[83MOZ\/PK+@
M=%^P/<Q\QP!#WE/VPBL X;PVI.4;MQ*B6WL>+RMH,'^@';3RSHFR!@MY9&>/
M=PSP41<UQ M]/_$:7+=ND>O8GA4YO0A2M[!G#K\T#69_MT!HOW$#]Q9XKL^5
M4 &OR#M\AA\@?G9[)D_>B'*L&VAY35N'P6GC/@;KW4KEZX1?-?1\LG>4DP.E
M+^KP];AQ?24(")1"(6"Y7&$'A"@@*>//@.F.E*IPNK^A?];>I9<#YK"CY'=]
M%-7&S5SG""=\(>*9]E]@\!.[SF#^&UR!R'2E1'*4E'!]=<H+%[094*24!K^:
MM6[UV@_XMS)[03@4A&-!D/RW  T%Z*T@TN:-,FWU"0M<Y(SV#C,/J\/JG0C6
M2#:S5$'=.WU/NN4R>BUBA'+OJH"&G*W)"2<YP9CA2?21(K11;,-%>?B>8+?,
MB.P$R.H!Z7(T)0A".T!D!8@T0/2N"=&L"28GU3FM(?%CW\X26UGBA<P8Q7:
MQ J0+&2F<Y4F)9ZH#((L6R6SAB<+,T$81-$=.ZE536IIVIPG7<C)T!V2S$J2
M64C2F>=L0?(IE&YF4BQ9"*5WWK.55<SJX_ZOEHT-LA3-7WAKVO0Q&37>Y"MN
M@)WUP.-.22^M4-_+)#K.U,=038%9?"MGK1F-;S!F4'_'[%RWW#E0(6>,G@0G
M2@5(E?Z#[%8E_PWC@<!)J&TJ]\Q,2',0M!N&OS?^@8I_4$L#!!0    ( ).
M35 +V;6I2P,  -</   9    >&PO=V]R:W-H965T<R]S:&5E=#8S+GAM;)67
M;V^;,!#&OPKB Q3?F;]5$FG)-&W2)E6=MKVFB9.@ L[ :;IO/T-H1/"Y==X$
M[#QW?LXV/_#L))OG=B^$\EZKLF[G_EZIPWT0M.N]J/+V3AY$K?_9RJ;*E6XV
MNZ ]-"+?]$%5&2!C<5#E1>TO9GW?0[.8R:,JBUH\-%Y[K*J\^;<4I3S-??#?
M.AZ+W5YU'<%B=LAWXJ=0OPX/C6X%ERR;HA)U6\C::\1V[G^"^Q5G74"O^%V(
M4SNZ][I2GJ1\[AK?-G.?=8Y$*=:J2Y'KRXM8B;+L,FD??X>D_F7,+G!\_Y;]
M2U^\+N8I;\5*EG^*C=K/_=3W-F*;'TOU*$]?Q5!0Y'M#]=_%BRBUO'.BQUC+
MLNU_O?6Q5;(:LF@K5?YZOA9U?ST-^=_"Z  < O 2 .&[ 7P(X). X.RL+_5S
MKO+%K)$GKSFOUB'O-@7<<SV9ZZZSG[O^/UUMJWM?%A%/9\%+EVC0+,\:'&GP
M6K$R%>%%$>CQ+R:0-(%].+\RD=$).)F ]PG"<8*03:HX:Y)>4_>:!)##I!)*
MQ2).FPE),R%A9C+,\JR)1L-$:9ID$S.F*HR3E-%F(M),1)B9K-XR,H;1$Q--
MU]A488B)969BTDQ,F+$D2,@$B?M&2<D$J<-&2<U"4V 3U8I0Q1FSK$U&FLD<
M-DI&S'K,HHD90@4Q2V@SP&@2,(>M,HC&(_$PF]HA5!%FEI4&"YB L&.A"M!8
M@1NX C18P(4L@^CJ 3+VRP>B:S,T6,"%+&!"@S#SONC:# T6<"$+F- PK+PG
MN39"0P4HJD26%#16X :N  T6<"$+F-  8.;C0\DP XLA&B[@0A<@P,&9\78W
M5<!CRQ0C31=TH0N:W- O13ZQ0ZBR#&.+'9HN2-'%EL+RT7(#79"F"[K0!4UP
M<(C3Z7-$R3#,;(9HPJ +8="$!VG(E.FOBBRU&*(I@RZ4P8\I0TC2C%F>**1!
M@Q1H+.]8I$&#-X &:="@"VB0^#J)XNF<4)\PEI<TTI!!%\@@@8]LRAA*!)87
M :<1PUT0,XC&'_AQ./%":, X @2C$U9WY/V1-[NB;KTGJ?1AK3]2;:540B=D
M=[JLO3YE7QJEV*KN-M'WS?FH>6XH>1B.T<'E++_X#U!+ P04    " "3@$U0
M^1^?'D #  !R#@  &0   'AL+W=O<FMS:&5E=',O<VAE970V-"YX;6R5EV]O
MFS 0QK\*X@,,[OA?)9&:1-,F;5+5:=MKFC@)*N ,G*;[]K.!4F*?*_8F@'-W
M/Y_A><"+*V^>VQ-CPGFMRKI=NB<ASG>>U^Y.K,K;3_S,:OG/@3=5+N1E<_3:
M<\/R?9=4E1[Z?NQ5>5&[JT4W]M"L%OPBRJ)F#XW37JHJ;_ZN6<FO2Q?<MX''
MXG@2:L!;+<[YD?U@XN?YH9%7WEAE7U2L;@M>.PT[+-U[N-MBIA*ZB%\%N[:3
M<T>U\L3YL[KXNE^ZOIH1*]E.J!*Y/+RP#2M+54G.X\]0U!V9*G%Z_E;]<]>\
M;.8I;]F&E[^+O3@MW=1U]NR07TKQR*]?V-!0Y#I#]]_8"RMEN)J)9.QXV7:_
MSN[2"EX-5>14JORU/Q9U=[P.]=_2Z 0<$G!,@/C#A&!("-X3P@\3PB$AU!*\
MOI5N;;:YR%>+AE^=IK^]YUP]17 7RM7?J<%NL;O_Y/*T<O1E%87IPGM1A8:8
M=1^#DQ@8(SQ9?40@A5BCD8ZW@(T9$=Y&;,T(\&-Z$@'99] 5"&[ZS.@"(5D@
M[ J$TP*1KRU4'Y-T,77?*80^38E(2D100*/T,=&$ AE:[DA,4F*"HMV3=6Q2
MXLRRY E)20A*H%$2D^+;>DE)2DI0M*=GG1J4-+1 ,A*2$9!(@V0&)$R"@*:
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
MU9/=:M59NRG(/=7)W+6#)G?F/QUMHT<OZWC!EL&E)>HQFPX#(PP9$(%F'Z8
M;(H-6.9P.\'61D3X!!2-@1KSZ":&!">(4(+($- ;@@5.$*,$,>)!.LEBATD,
MINHQ41A.4H&@6#A"W3C#4&>8[4SJ($A0@L1.1^I8\05*L$ \F*SYIL/$HT#)
M(HXGV;!!<>SP)$4]21%/*$Y 0EP@X?QL$(?&".)%-!49L6*%-)GD P$Y5I:@
M6GP@@+@2.RAPM1$Z7RT$UQN)9NBE!XUCC2!BEF(0'&4L<6F&X HFB(13YJ#
M=4?8!W8*KCR2S%!.#[I)#(VLK6*C8M?.QU5,,!D[SE6"RX^D\U,"N/X@G)&2
M'C0.-B7$NF9L%$G X0TN9<"D[-C\@$L0X ,YP24(R(UG'2@]Z&:;3#<)@J'4
M<1P KF5 M)RF#@I<>Q!_(".X]@"[]*R,,.MRC4@T38D-2EPG). J!EO%S'4<
M :X]6,P_9 '7'MAW'PO)-"48R"$)B@N4V@)EH>.DH;BJ*)D?+<551>V+S8X6
M!4V?FL'HZ5QR>3151N/MQ+DR)<YH=*AD'DPA$[S#NS+H>R:/>=5XST+I![QY
M9A^$4%S[$M[I37_2E=?0*?A!M<U$MV57?G0=)>J^M J&^F[]#U!+ P04
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
M]C36YU6W>=-=-.K4;TQYU]VQ]?]02P,$%     @ DX!-4$H<!%M? @  W@<
M !D   !X;"]W;W)K<VAE971S+W-H965T-S N>&ULA57;CILP$/T5Q >$^RTB
M2)M$52NU4K15VV>'. &MP=1VPO;OZPO+@G&2/(!MSCES9@(S>8_)&ZT@9-9[
M@UJZL2O&NK7CT+*"#: KW,&6/SECT@#&M^3BT(Y <)*D!CF^Z\9. ^K6+G)Y
M=B!%CJ\,U2T\$(M>FP:0?UN(<+^Q/?OCX+6^5$P<.$7>@0O\"=FO[D#XSAE5
M3G4#6UKCUB+PO+%?O/7>DP2)^%W#GD[6EDCEB/&;V'P[;6Q7.(((EDQ( 'Z[
MP1U$2"AQ'W\'47N,*8C3]8?Z%YD\3^8(*-QA]*<^L6ICI[9U@F=P1>P5]U_A
MD%!D6T/VW^$-(@X73GB,$B,JKU9YI0PW@PJWTH!W=:];>>_5DS@9:&:"/Q#\
MD1 \)@0#(?@DA \)X4 (1X*OJJ52D;79 P:*G.#>(NKO[8!XB[QUR*M?BD-9
M;/F,EX?RTUL1!V[NW(30@-DJC#_!>"/"X>IC"-\48NLOZ''@S4/L3!A_CMF;
M,('92&#,-9 "P43 ]S.S0&@4"*5 .!'(,JU6"A))2"LAD2M_6L+/<3,_D=%/
MM/ 3!Z%F2&'222!WY>KE?P*:68F-5F*#E4BS$B]RUJOR"#$SD1A-) L3GE[X
M;?+4Q"/$S$1J-)$:*A%K(=)%B#O%SHPA,D.(1/M:%";17S!S&,\U-P?7$"C5
MNX.[2";)TB0+[X2ZTX<\0RC]XQI SY)R)LVO@>0B!PNU2GQMY52;G([#Z\67
MS?,3KB;?#T N=4NM(V:\!<M&><:80>[&7?&4*SYLQPV"9R:6"5\3-7'4AN%N
MF*;..-*+_U!+ P04    " "3@$U0^;SF,RP"   M!@  &0   'AL+W=O<FMS
M:&5E=',O<VAE970W,2YX;6R-5>]NFS 0?Q7$ ]1@,"0106J23INT25&G;I\=
M<@FH!C/;"=W;SS:4$>)5RX=@GW]_?(=]9!T7K[($4-Y;S1JY]DNEVA5"LBBA
MIO*!M]#HE1,7-55Z*LY(M@+HT9)JAG 0)*BF5>/GF8WM19[QBV)5 WOAR4M=
M4_%[ XQW:S_TWP//U;E4)H#RK*5G^ [JI=T+/4.CRK&JH9$5;SP!I[7_&*Z>
M$H.W@!\5='(R]DPF!\Y?S>3+<>T'9D/ H%!&@>K'%;; F!'2V_@U:/JCI2%.
MQ^_JGVSN.I<#E;#E[&=U5.7:7_C>$4[TPM0S[S[#D _QO2'YKW %IN%F)]JC
MX$S:?Z^X2,7K045OI:9O_;-J[+/K5Q(\T-P$/!#P2(C"#PG10(A& OZ8$ ^$
M^'\)9""0D1 N;7G[W&TQ=U31/!.\\T1_'%IJ3EVX(OIU%29HWXY=T_64.GK-
MDSC(T-4(#9A-C\$33#@BD%8?+;#+8H/OZ$D<WEIL71A\B]G=8T@ZPSRY="+W
M9B-G/2(K$-\(Q+-Z]!AB,8W%_,,B=EK$#@LRRR.^LPA3$NB?VX@XC8C#*)GE
M0NZ-\#**%]AME#B-$H=1.C/J,>G$"$?IO+1;!XHL@AEJ=X\*ERF9'THTN0,U
MB+-M2-(K^*51YHQ,HF//>[1]8!;?A*M=W[K^RO2-]!L5YZJ1WH$K?4/M/3IQ
MKD!O,GC012UU[QXG#$[*#%,]%GT'ZR>*MT-S1N,7(O\#4$L#!!0    ( ).
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
ML]Z+8> &0_%V?$O0]*"E_P%02P,$%     @ DX!-4$P(G:IA!0  ,AL  !D
M  !X;"]W;W)K<VAE971S+W-H965T-S0N>&ULE5E=3^,X%/TK5=_'M7W]%01(
M0+7:E78E-*O9?0Y@H)JVZ28!9O_])FDHB>_QB.T#3<+Q_;!]SSV-S]^J^GOS
M'&.[^+';[IN+Y7/;'LY6J^;^.>[*1E2'N._^\UC5N[+M;NNG57.H8_DP#-IM
M5UI*M]J5F_WR\GQX=EM?GE<O[7:SC[?UHGG9[<KZW^NXK=XNEFKY_N#KYNFY
M[1^L+L\/Y5/\,[;?#K=U=[<Z67G8[.*^V53[11T?+Y97ZFQM0C]@0/RUB6_-
MY'K1IW)75=_[F]\>+I:RCRANXWW;FRB[K]=X$[?;WE(7QS^CT>7)9S]P>OUN
M_9<A^2Z9N[*)-]7V[\U#^WRQ#,O%0WPL7[;MU^KMUS@F9)>+,?O?XVO<=O ^
MDL['?;5MAK^+^Y>FK7:CE2Z47?GC^+W9#]]OH_WW87B '@?HTP!M?SJ Q@%T
M&J#,3P>8<8!)!JR.J0QSLR[;\O*\KMX6]7%Y#V6_B]29Z6;_OG\X3/;POVYZ
MFN[IZZ4KU/GJM3<T8JZ/&#W!?"!6G?63"XU<7&LV7,\=W'"$F2/6'*&DPT$0
MS),& S3+4V,#!AHP@P$S->!M,E%'3!@P^P%CI<AXL="+Y5Z"Q08<-.!XGJ;
M!CPTX'D$!25Y'C%NDJ<I<GD&Z"6 V?2)%X ) 3LIH),"K+G!!I3$U2'!;*2K
M/H+L9#J"M2$4R2X'N(*"L<GLKB'.*I]91I4I; 5"=VGHBKDRTI.V:>@<1]([
ME98IPA5.N=RL0\*X4AJ$GNZ.$31U]85L4(I-.P2JH%P:/ 9:0YGH,=,H M&'
M-'KBOH(-CM+@ 8X".9W&#G!&D?&9T#''*4!R19&&;OAV5X6FE-01#I3%&N"2
MLIB'CHE3V<\3O,+4J1S+WDN99N\8QSL2/'D.LTIH5B\<1E;(W*IAQE:<LKUD
M/?P(ZKGEY,H7(NWU-P@7E+ VC1S9T\+E5@VW <4YWDN=AAZX*VL$YU> ,UXP
M>@4P(N%SD>/>H@H0>=HG1]!\DIP(IIA\TBS &"<%KWB HT+8S)[7N,%IWN"\
M3';I]0B:[E)/(J1<!6"@--8 -B^->=RXNVG>W;Q,&_,(FND4+3(20N->I'DO
M\C)MHQ"4*6*-NX8&72,P/PB4\X,I7G.*]S(W)9AJ-:#:G,;4F&HUIUJN,D?0
M=/F4R&6+J5$#-<MT)@!YF<L'\Y@.GY>:&A.*YH3"I>8(FO9*[0W7/ AGM'0J
MK46.4XX*E?E]1YA$"*GD=.\25[7=QM/)8MP 6*$L)?II#6!*6F=E)G#,(H0T
M<KH]B&O:+SX4)J4_A+-.VU3O()PV/B=6"/,2(8V<JDP"BM84WJ=J!>%(ZW2W
M()C.L@=E?H@C>9QJ3.)R5BNG*54K" ?J88UP\WJ8AXZYD\SG-29A[B3^ Y]K
MS!$TZY!&L-PYRI!(M^\:P'J)F5$[A/F:D#1.)>8(FBD2I;5@NPW@7!"&;3>
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
M YO)08@7N_AZ7(>1-<0X*[55H&:XLBWCW H9&W\&S7#<TA*G\[OZ9Y>[R>5
M%=L*_KL^ZFH=9F%P9"=ZX?I9W+ZP(9\D#(;DO[$KXP9NG9@]2L&5>P;E16G1
M#"K&2D-?^[%NW7@;].^T90(:"&@D0/(A(1X(\1L!?TC  P%[!-"GXFJSHYH6
MN12W0/9?MZ/V$,$5-M4O;= 5V[TSY5$F>BU2_)B#JQ4:,)L>@R88."* 41^W
M0$M;;-",CMYOL)TC\'O$;HZ $5DV$2_F&3N!>&H"HV4!O"B G0">%BJ)O$+U
MF-1A6H?),$*)E^T<!6$<I9F7\AR6PCC[C^=DT7.RX!EZGGM,,G6#2>29V<Y1
MGS!.B&=YCL*/&5YV3!8=DYEC"/WC2&:%><RR./8<SU$PR@CRCMYN#DM)3/RC
M!2;7J6'R[%J5"DIQ:;4]EI/HV V?D+V.7GQCNF3?U-YD^A;[G<ISW:K@(+2Y
M[.Y*GH30S)B,'DQ)*]/5QP5G)VVGJ9G+OK?U"RVZH6V#\=]1_ -02P,$%
M  @ DX!-4.G:^ [G @  R0H  !D   !X;"]W;W)K<VAE971S+W-H965T.#$N
M>&ULC99=;YLP%(;_"N)^Q=\.51*I231MTB95F[9=T\1)4 $S<)+NW\\VE";F
M4/4F8/.>]SS',>;,+[IY;H]*F>BE+*IV$1^-J>^3I-T>59FU=[I6E7VRUTV9
M&3ML#DE;-RK;^:"R2 A"(BFSO(J7<S_WV"SG^F2*O%*/3=2>RC)K_JU4H2^+
M&,>O$S_RP]&XB60YK[.#^JG,K_JQL:-D<-GEI:K:7%=1H_:+^ '?;S!U 5[Q
M.U>7]NH^<J4\:?WL!E]WBQ@Y(E6HK7$6F;V<U5H5A7.R''][TWC(Z0*O[U_=
M/_OB;3%/6:O6NOB3[\QQ$<_B:*?VV:DP/_3EB^H+XG'45_]-G55AY8[$YMCJ
MHO6_T?;4&EWV+A:ES%ZZ:U[YZZ7W?PV# T@?0(8 +-X-H'T ?0M@[P:P/H %
M 4E7BE^;36:RY;S1EZCI_MXZ<[L(WS.[^ELWZ1?;/[/+T]K9\U)R,D_.SJC7
MK#H-N=+@09%8]R$%@5*LR"@\2+ >*]BM8C-68"1@" K62;T!O:F3P@8,-&#>
M@-T8!)2K3B.]INHH*14BJ!9024%D4#&DXIS#R!Q$Y@ R#Y [#;]*PQ$*ZEJ/
M153(H*S-6(1%.K%1!,@K %X<\(I1%I&R0+0>BS"2--AUF[%*TJD%EB"P!("#
M95G)41;"*0Z)QRI*$ W^K W@)02:6.,9B#P#W@,)&Z2@0?J!]R =<7Y**0NJ
M60,JPF18\U@EA& P,4;P&8<^\"+THAL<+&<T@ 9EF*4!-22SQ:$)[HFS&7_@
MA>A%-YD$1R$VH))RAD-L0,9I.G%08O"\?\ $P)Z%V 1:1XL4@H,ZAL)M NO2
M=((<_DA@"I"G(3D%3GE.1QME+"-(4!1R S+.$ FXDZOO>:F:@^^5VFBK3Y5Q
MW\6KV:$?>R"N'PCF5ZY/\WW"FTW7Y'W/FD->M=&3-K;;\#W!7FNC+"6ZL^MZ
MM'WE,"C4WKA;:>^;KKGJ!D;7?>.8#-WK\C]02P,$%     @ DX!-4.Z<5,!>
M P  R@T  !D   !X;"]W;W)K<VAE971S+W-H965T.#(N>&ULA9=M;]HP$,>_
M2I3W;7RV8R<5(!70M$F;5&W:]CH% ]&2F"6A;-]^SD,9G"_M&Q*;_]W]?!P^
M>W:V]:_F8$P;_"F+JIF'A[8]/D11LSF8,FON[=%4[IN=K<NL=<-Z'S7'VF3;
MWJ@L(LZ8BLHLK\+%K)][JA<S>VJ+O#)/=="<RC*K_RY-8<_S$,+7B:_Y_M!V
M$]%B=LSVYIMIOQ^?:C>*+EZV>6FJ)K=54)O=/'R$AS7HSJ!7_,C-N;EZ#[JE
M/%O[JQM\VLY#UA&9PFS:SD7F'B]F98JB\^0X?H].PTO,SO#Z_=7[AW[Q;C'/
M66-6MOB9;]O#/$S"8&MVV:EHO]KS1S,N* Z#<?6?S8LIG+PC<3$VMFCZSV!S
M:EI;CEX<2IG]&9YYU3_/H_]7,]J CP;\8@#J30,Q&HC_!O)- SD:2&00#4OI
M<[/.VFPQJ^TYJ(>?]YAU500/TF5_TTWVR>Z_<^EIW.S+0BLVBUXZ1Z-F.6CX
ME08NBLAYOX3@5(@E]\SY;8"5KY"WBK6O *9H"$&N4_0.Q)4#H03M0)(.9.]
MWB0*4*(&C>XUU;!2IN,8K990\0103M:$2FF>T,@QB1P3R"C,<M#$5V%$FJ:(
MV!=)X0'[(LZ2E.95)*\B> 7B55Z4NP1B7%"$*E8B0<2$2LIDHJPTB:P)9%2[
M2^V%07^PU;N*M:^X<ZN>J(:$1$T(5%2:R\0/HZ1">5M1JIBCHED3*@#-)BHB
M)9E3@EDAYO3=]/H*#EPC7%\$D*B)C0X8O9DR@E?CW90190<)AJ9D;@? -4S(
MV 3S1 , @CG!S/!ND@D)YRG>)-YT=(M+-I-'X 1NBG$YM1<!)O956L88V!>!
MB.4$,]U[0/C,VFNRP@^4)@HS$RHA%(;V57=*3&QL0/<[(!J>Q@UO%-TDVJO1
M%:$2TBMD7Y2PJ=J@^QT0#4_CA@=^G[KS"GY-J6(^<6  NIV!W\_ VW'!;T*)
MD#B!O@AB)C"SKTKYQ'8+=#L#HI]IW()'D;[]2PB!H7T99TK@SD;)8LDXXHZN
M#K2EJ??]9:$)-O94M=W!\&KV<B%YY-V!&,TONXM*?U#^[V:XY7S)ZGU>-<&S
M;=UQNS\4[ZQMC:-D]RZK!W>QN@P*LVN[5^W>Z^%V,0Q:>QQO3M'E^K;X!U!+
M P04    " "3@$U0G@5-8@$#  "\"P  &0   'AL+W=O<FMS:&5E=',O<VAE
M970X,RYX;6R-EF]OFS 0QK\*XGV+SQALJB32DFK:I$VJ-FU[31,G006<@=-T
MWW[F3R/B.Z:]"1B>\_W./IYX<3'-2WO4V@9O55FWR_!H[>DABMKM45=Y>V].
MNG9O]J:I<NN&S2%J3XW.=WU054:<L32J\J(.5XO^V5.S6IBS+8M:/S5!>ZZJ
MO/FSUJ6Y+$,(WQ]\*PY'VSV(5HM3?M#?M?UQ>FK<*+K.LBLJ7;>%J8-&[Y?A
M!WAX!-D%](J?A;ZTD_N@*^79F)=N\'FW#%E'I$N]M=T4N;N\ZHTNRVXFQ_%[
MG#2\YNP"I_?OLW_LBW?%/.>MWICR5[&SQV6HPF"G]_FYM-_,Y9,>"TK"8*S^
MBW[5I9-W)"['UI1M_QMLSZTUU3B+0ZGRM^%:U/WU,KR18@RC _@8P*\!\.^
M> R(_S= C '""XB&4OJU><QMOEHTYA(TP_:>\JZ+X$&XU=]V#_O%[M^YY6G=
MT]>5E&(1O783C9KUH.$3#;]5;+#"F^,1*X"E5TWD&*^@G 3E_03Q%#2FXV,R
M/N[CQ4VAB5?HH)&]IAX*A3CQ5!NL BDXHV$$"2,(F-2#&33))(WBW&?!(JF$
MH%$2$B5!*"KV2!*4! 2 ]%"P:F9)4I(C)9;$2[%.\9(H\#IM@T52*J!1)(DB
M$0H(?W<DRB*R298!A1)-FNX&19$H"J.D?M<JE"5AJ?)0L$@P)6F4C$3)B WR
MLJPSE"7E2<H\%JP2'-@,###:MQC"$9#YQL50IKM8\=1W+T(&()1O80Q]^'>*
MS30YS-@M$*N(L 'OJ)*QW^B$3+ LR6: :%L%[*MJQC^ -E; SBHROT='T90U
M5K'?I(1*QC#7&+2U N&MW*?!M@DQ%YF/@V5SNTU[*V!SQ9\O8..4Z/,E1.E$
M= M#&RP0#JN8#X/=$Z1"?X&$3&9JQMF =EG -BM]!UV/(NGY%MHI+(MY)OU&
MCB:GHNY<^S5O#D7=!L_&N@-6?PS:&V.UFY+=N^*.[BA]'91Z;[M;Z>Z;X3PY
M#*PYC6?EZ'I@7_T%4$L#!!0    ( ). 35#X.0E/H (  #4)   9    >&PO
M=V]R:W-H965T<R]S:&5E=#@T+GAM;(56VX[;(!#]%<OONS;X'CF6-HFJ5FJE
M:*NVSR0AB;78N$"2[=\7L-?K $E>#(S/G#DSMF8H+Y2]\2/&PGMO2,OG_E&(
M;A8$?'O$#>+/M,.M?+.GK$%"'MDAX!W#:*>=&A+ ,$R#!M6M7Y7:MF9524^"
MU"U>,X^?F@:Q?PM,Z&7N __#\%H?CD(9@JKLT '_Q.)7MV;R%(PLN[K!+:]I
MZS&\G_LO8+8"VD$C?M?XPB=[3Z6RH?1-';[MYGZH%&&"MT)1(+F<\1(3HIBD
MCK\#J3_&5([3_0?[%YV\3&:#.%Y2\J?>B>/<SWUOA_?H1,0KO7S%0T*)[PW9
M?\=G3"1<*9$QMI1P_?2V)RYH,[!(*0UZ[]>ZU>NE?Y.E@YO; 0X.<'0 ]QVB
MP2'Z=(CO.L2#0VPX!'TJNC8K)%!5,GKQ6/]Y.Z3^(C"+9?6WRJB+K=_)\G!I
M/5=9#LO@K(@&S*+'P D&C(A LH\AH"O$ EKN1H"EC8BO$2L; <+4+2)RYAEI
M@N@JS\A-$#L)8DT03PBB/#4*U6,RC6G[(  41K(V*$Z*T,C7!B4@OI%PXM2;
M6'JSW*CJHL<D4[V9H61I8V!> $.N#4KRT*TV=:I-'6H30VUJ!3&UV@@0%Y&A
M]1[-E=+,J31S*#7_@\P*\92EN:'# 4K@C5\R=TK)'5(RHR2Y%24.,W>0PAFD
M< 0Q4ED4#[^,C7B",#7ZP.H>SY54$+J;6>@06YC=+'RH]C%DY8 \I>#&YP,W
M>B^P>TIA-5_@:"H0F(I=*+/UK!RHJ][3BPXFLZ/![*#G,O>V]-0*U8,GUG'V
MOT U>PS[0MT)]$SZI.DO%#\0.]0M]S94R,FFY\^>4H&ER/!9UO0H[S#C@>"]
M4-M,[ED_R/N#H-UP20G&FU+U'U!+ P04    " "3@$U0!['#%X@"  #-"
M&0   'AL+W=O<FMS:&5E=',O<VAE970X-2YX;6R-5MN.FS 4_!7$!RP8$RX1
M0<I%52NU4K15M\\.<0):P-1VPO;O:QO" G90\Q!L,W-FSK'E0](2^LYRC+GU
M494UV]@YY\W:<5B6XPJQ%]+@6KRY$%HA+J;TZK"&8G16I*IT/-<-G H5M9TF
M:NU(TX3<>%G4^$@M=JLJ1/_N<$G:C0WLQ\)K<<VY7'#2I$%7_!/S7\V1BIDS
M1#D7%:Y906J+XLO&WH+U 4!)4(BW K=L-+9D*B="WN7DVWECN](1+G'&90@D
M'G>\QV4I(PD??_J@]J IB>/Q(_H7E;Q(YH08WI/R=W'F^<:.;.N,+^A6\E?2
M?L5]0BO;ZK/_CN^X%'#I1&ADI&3JW\INC).JCR*L5.BC>Q:U>K9]_ ?-3/!Z
M@C<0A/82 ?8$^$GP%PE^3_!G!*=+1=7F@#A*$TI:BW;;VR!YBL#:%]7/Y*(J
MMGHGRL/$ZCT-8S=Q[C)0C]EU&&^$\3TP8!P1?Q#Q3"([3PL W& JLM<QWA1Q
MT!&^V00T9@H5'4XR?9*%;PS@JP#^6!^&LU)UF%!AZBY3$+OR9U9:&956!J5H
MIM1A5B.E:$DH, H%!J'9QNP"30BZ"T*A42C4A,)XMK_[4*]=-!7JSH&.@_Z"
MH<AH*-(S!_$L\T@OL<'/7H?!R MTWSH. #]ZZCLV^HX-A80SW[%6H+GE6+,R
M-[N$F-@$KOE><0U&_9F-'C16"9>V$CRYPX!!:_4DA/&&V@+O_V\'8+Y? #2X
MF-]R/6ARR"$PG7(3T@U-Q7%&=WV%Z57U469EY%:K)CY:'7KUUE.]XA/>-?H?
MB%Z+FEDGPD7'47WA0@C'PI#[(K8I%]\6PZ3$%RZ'H1C3KL%V$TZ:_N/!&;Y@
MTG]02P,$%     @ DX!-4/*"5#YF P  7PX  !D   !X;"]W;W)K<VAE971S
M+W-H965T.#8N>&ULE9?M;ILP%(9O!7$!PU_84"61^K&NS3*IZK3M-TV<! UP
M!DZSW?UL0M)@'SKV)X#SO*^/CX\-GAQ4_;/92JF#WV51-=-PJ_7N*HJ:Y5:6
M6?-![61E_EFKNLRT>:PW4;.K9;9J1641$81X5&9Y%<XF;=M3/9NHO2[R2C[5
M0;,ORZS^<R,+=9B&.#PU/.>;K;8-T6RRRS;RJ]3?=D^U>8K.+JN\E%63JRJH
MY7H:7N.K!196T!+?<WEH+NX#.Y07I7[:A\?5-$0V(EG(I;86F;F\REM9%-;)
MQ/&K,PW/?5KAY?W)_;X=O!G,2];(6U7\R%=Z.PV3,%C)=;8O]+,Z/,AN0'$8
M=*-?R%=9&-Q&8OI8JJ)I?X/EOM&J[%Q,*&7V^WC-J_9ZZ/Q/,EA .@$Y"TS?
M[PEH)Z!O O:N@'4"-E80=X)XK(!W CY6(#J!&"M(.D$R5I!V@G2L */3S*$W
M"7]?<IYL/+J7TW1CXDBB8V&UE7J7Z6PVJ=4AJ(^+;9?9-8VOC,J8V]:V]ML_
M3;4VIO5U)E(QB5ZM4\?<'!ERP3""^\S<9]Z(R(1PCH. <=P03T_Z/=SZ!",.
M<P<QM,]\A!C69^X!ID]\@ESB/O, ,;S//$*,D__Y/W/S^9_Q+GP"(P[/$(4K
MA;8.M%<I">S 8 ?6.K#+<:3.4'V$(KB/&.XC]@PP<NOYR(B6J4[S(D3B%)R/
MD22EJ1/R'8!QA(4S11\!C K.G75T[V,T89P[I?4)ZI3%U)GU!P CG&(G(8\
MA@7B3D+F/H8)9@@CIQH!#J4D3MR:]+DDH2D>V#@X/.'<FW#&&.P@8 <QOK 3
MV"$!8G W2(AQ9O4SQ#@;Q@)B!!QM"D>;>@[BHJA[#O8E!KXUT/B<X:$W#QZ1
M-0!*D%MO(.0X+4"(#(0,OZ2N,0$\Z(#'P#:*_V,?Q0,;*?:W26^7FW?0Y?+B
MB'*<N-GSN9BC-(W=!/H<BTG,A\8_L$%C?X=.T,""Q0-K'O/_R.' JL=B3 Z%
MGT.,:.J^?P$NICA.4C>'/L<HILR-/;KX?BMEO6E/*DVP5/M*VW%?M)Y/0]?$
M?O\Y[3?XZA$#[7-[>FJ_%]_LCT>O+UF]R:LF>%':?'>VGX9KI;0TX:,/9NZV
MYK1W?BCD6MM;8>[KXY'G^*#5KCO.1><SY>PO4$L#!!0    ( ). 35 +DA]1
MI ,  /,.   9    >&PO=V]R:W-H965T<R]S:&5E=#@W+GAM;(V7VW+B.!"&
M7\7E!\ Z2TX!50.!0(:M2LW6[EX[( XU/C"V$V;>?N4#!%H]&6ZP+;[_5TO=
MDJWAJ2B_5WMKZ^!GEN;5*-S7]?$ABJKUWF9)-2B.-G?_;(LR2VKW6.ZBZEC:
M9-.*LC1BA*@H2PYY.!ZV;2_E>%B\U>DAMR]E4+UE65+^FMBT.(U"&IX;OAUV
M^[IIB,;#8[*S?]OZG^-+Z9ZBB\OFD-F\.A1Y4-KM*/Q"'U:FX5O@WX,]55?W
M03.2UZ+XWCPL-Z.0- '9U*[KQB%QEW<[M6G:&+DP?O2>X:7+1GA]?W:?MV-W
M8WE-*CLMTO\.FWH_"DT8;.PV>4OK;\5I8?OQR##H![^R[S9U>!.)ZV-=I%7[
M&ZS?JKK(>A<72I;\[*Z'O+V>>O^S#!>P7L N M?W9P+>"_B'0'PJ$+U W"N0
MO4#>*U"]0-TKT+U WRLPO<#<*XA[07RO@))SYLB'1'TNN22;WMW+.=V4 4G4
M%59;J8])G8R'97$*RFZM'9-F2=,'IW+F36M;^^V?KEHKU_H^-D0.H_?&J6<F
M'<.N&,'H+?/L,Q]$Y$*XQ,'0.";,T[/;'J8^(1A@'C&&WS(SC!&WS!QA;HDG
MS 7,VP)CU"VSQ!@-YO:/<_/UC_&N?((2A6>(XY7"6P=^'84PN(/ '43K(&YB
M &.==(QNF?P\9UH;4 P^QDS,XQC4 X(I0C68OAF"<:T4J/&YCW$CE )I?\(Z
M%9*#C"P0C"E.P80L$8QJHL"$//L895002D"E(!R)F32P7GS.&![3WRQJB2=<
M>B7#M< =%.Z@_)*A("V3CI'70U(QUV#D4P3CR@C@]HA@U%#H-L.P6 JPO.<(
M9I2$0WC"8I., +<%UJF.O3T%PZ0VH$Z??4P*'L/=YRN"22D8*,"5CPG.J8SQ
M=&L\W=I/-WS33+2_( B!:9SZ%)>2P_>%3VD&MZ09TB%SR0&91BA)8YAH)"P:
M,[!M+7R*$J&!UQ*;"+?B099]RDA.X+: 4#J.P72M?$J26/UF11L\Q09),=A\
M)AUCKOHA Y"5J<_0 31ZQ(S@:WJ&]@;*>XY!!D!/6$P43.("<^)PUT=C@JGU
M(3:(X?+U(3Z );[" M<:Y#6Z^JC,;+EKCT]5L"[>\KK9Y:]:+R>T+ZSY* 7M
M$_JPI$C[LSO1=0>P#_ON./A74NX.>16\%K7[&&Z_5[=%45L7.QFX/6?O3J"7
MA]1NZ^96N_NR.X=U#W5Q[(^8T>6<._X?4$L#!!0    ( ). 35"G5O,KH@$
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
M/^/,.Z1L93]#$094=TKV?XZ2X;![\#^C;#2:I#1).HMG\[D^5*"(P+.;B6,
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
MWA[:))=DVVE8):U)-G8V)GQPF;&YB@,I1 ?5/V3';LT")W3P(O(P!@#?"A(
M7VL,4=2=%]C2CPBJ1:A '<*(K1S+NC^27]8G%E*R&NI"P//P(E72\)%#Z,Q?
MJDN@7!]@&W"BA[(TR0Q+8*,Y@F@0[U;4.J7%+/1[4ZHB>=O5JOHE;\H4<* H
M=6R(G'JF]YWS"ZW0482/O"O6#"NTN?"$TJN)\.TWP,L*.FQ\8EU\Q<]U- '1
M7Y;/ JIL#%]\<?(0HM'5+'K7>7[P-4@S1(HP[+#<@LAVF^_R=>$,/8B9J!.A
M5$-A.*_1.;0J>%5$(UQL&85KY =\7J,HNV/-1(FG^&\&Z]:HC+\:L87N^!U3
MXXI"B:H[YB/BJJ+@B!VYC5=LRA.C&HOIQ*?0B0('$(NZRZS(0:)UDJZ":$@:
M8@M'MK*V/9%_Z%5"?<1'O)! N6\@[_?6R\3,Z!WF0KXK</1K7K-[R-G_6453
MHMMI@#UALE:0#<T%^ VR'6\$WW7XNYQ5TJP=]H0"LD2(H@  / ?4=4K/J44^
MSB5D:8NWR%?>M#-@L#C U)<<CP/K< #VB]VU(.G]6!V<M]5Y7ZWO&"; J!^X
M%K97HM:[[G;Y% !<@!CH%T(=UR\K_PKTQ^[._13C8#!(W#2G/!*YR)R%.-S2
M'ZWI"4&4S7-51:$@8I"ZWMDUM$&%56_EN+ [V+*0YQ ,6G.',_'MTW&Z-<71
M<>]LSXZE>P>H>(=6^DPXQ2 RZ;X;@EL!%4/+,5J%K>),S5%"6)GPJQB]72O
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
M9U)S":-$ MKE#^YL!]%/(N%@X/>I";# HQ8V+6J/FF3'0^L"NN@<"A+%S>K
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
MI](9L:R2NNTLLC#BQM%E^EQIL%2.7WH'T^7HN3M%=O2P_GG">Q&<3/LX]/9
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
M+']7<,,OKJO9?"X9#J*>^1^U%*?[N]W8QL7?4'R:1()GAI)SE/$+;!F&<5_
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
MAR23!KWE3I_,Y;,/-S_5SYY31)(DF4C>J<K7@O'X'(>4VE9=VQQ'-6U??'A
MT-$KK%!F?<+$G+C[:29V*:63[G6EF6]*IQG/1$7PW;K;RU)# );W8-M*858J
M.EYLTJ$EDBGCGD^M[^'O)65 :60KK+:^Y];LKB<NMQ-Q64WM!K]<(!;5WZR2
MT3OLO]R@=5MR"SCIO(ZFG(YMBG4,;HA,>A*+QUEDY&G33@F/V'M!SX95+CAO
M[L,M=3G(:-<Z$)D8=R^]%K+=[FB:=I+^=-98V'" (NP%KEJ<E5$"-;.,S& A
MC#CKY97AINS>J+AG"NYK^ =<43J$?_4=S*,ZF-D(GE4=[L+\[D:-&!56'UH
MYU,=71$VQ[^-B[.W"WR#G]NA3^(O%^0P1J!?R^"3P7#\#0S^3 +SZ_E\BXD_
MK>%-1_$B281=CXQ^-XFGDZ$H>,J\TG$\6R!K'(\&'#:LO"N-9\,Y,^M9\C2S
M3L<IV64N<*2%EQ(6"=4;F\X'8\\R)U.L>X"#CYNL.DY3K!(ZGIR:U7'J=#8F
MWHM]9@;)T,TZ ^T0=-LD39$-Z;0S4%A5-!F%HLDBGLWP&&;S 2AV3S+J-)E*
MP1EX0?K5G,VH">488A-3=>OW8[N_ENEZT'^M1B5FL*X\%#E3WHHSHUDLVE&*
MT ^M3DK'L4X.?OGL]<V'#^C!88OY)O<<F)O2Z^-=,X>^/BDQ#@2_ C0&?H#5
M7;GDXX&[4,-9.L/7?.*H)/:^<1U B6Y)Y$T8>R(.#_>W*>E866)=%U^O*%@#
M_@#-EIS#4NS1O_(CENC#"TTF1 GPB.%C*=W0\6) 6]JYT["]<9O;\V9-/$RR
M:AJG0N(WVAK,*EFQ.HS'Y*BB9?"Z8^=;<+?15 0Q$P"C@K]BJ2"IVB.<;4]G
M&QS$Z;Q/]1], *T74^<]"'QDXCSH<,+@$?2[#A)3HHEJUK5*XPW]$TTO+L9=
M% >?DOB2JA/<<9[>-SU\7CIE,N' C_YAW@$%VF"-1:G05$=O2,!!PS4*)P7+
M=2HKE14\E%%1T'8&I)7#BB 4 EM<ED>D35FQK:G,/O;(D2BL@V1*\Z$#Y>.>
M0FOS$WK;N$8XADFLF%]RDW&6OJ4^9(UO;K*'^DCN1IXOXE+-;H>2=;TJ:D[7
MI"B>=?:EK(!E/W*O)_7,<HT'TQ-)"DB@7<+6 A Q1KIFMHO&>B'<2PAF>S !
MIMMA/R#?&UH2S&'IMQK8>/"Y%/Y$L 9.N:.U^TI>8L"22#VJQX+N0-)$^#W,
M:<O0%_?>]#H:*QI1[1<JKZ]72E@D5IX?BBH#$A>] >E]35RCJH4F@ *VHV"P
M-T<J1[JA>)/]\2 )'>B-BJ3LNT#53X.; 0(T"4(PW['RL6LW  _WV(W(_0[G
M^F/^$/U[67T.Y$J7OHCR>ZB3A6%&W**W(I\SV=9@A6=OZ,M &G78OAMQA$7*
M-X,8J/(@2KY+%E?++U?#Q7PT\ZTK-PBF&#64(^A_*4I)LB#S3"Z4.!E>WCX7
MR>XR>ZYT]P8#P#DN]K6F0U[S622+T9C=U5M)#Z+ !ON81%9\/&)-K.'MU80A
M@TF>$R-X92N HC5 "J/]MJBQ?X?D;VKR"AVB:Q<.P ^GN5/O9Y/%FE+/IGU)
MV=F^A%9I&V0Y.VQ+9/!.M4[5N7GL=9Y_1O0"AG/G IVYDLMQYTMH.':&A8]7
M !%W8?BJEMB(N?C";L?WYMW=K=V[0RUVZTWFQ7P2)K ($DRURQ\=L*WS7*O
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
M15V72HAEP%A=-3G7K$*J6@].H-_-ZY<(S.NU%B"ZH3^N?:^,%\?-!@N>L*L
M.W4_N[E^@9\XY1# MZ+F8*B(^';QN!!RFWQ_??V!*K45K@<-5>1#"?Z."J1@
M%R_MFD=60;)MPGKK.B-C)YFV6?S0HCO8"0:V76&W*Q3S  H>,2;^TN,-<IRC
M-  C_=?%)I,Y$@:BC$DITN:T8]DV=;L3^+#<RA=%%]S@YFV-:D-R0G%0BJ<+
ML!LI@V@/E1[R!(.P*ZRQK$K=J75('1M7!757^FYEMAVZ %D;?8Q!A7BQ6JC4
M\(#>#FJI5V@9HB8--.NC'M2<HF-X?/'WD6QN3JV$F-&,6G  Z,^3E+GO+)T+
M.V7YY1*[*"#RR BWK'X^!SE@ 8QO# P<R_Q@W9XWK4ZZW$T+!IG'R21E?CL=
M$0<=4_&AYU[Z$D-1X4NS%-1[0;]LVBF \TZH4LGKKTO",]C3K>K&7!T? :SL
M+PMU.8W'4UK,%(9:"%^?#8F=GV2_QE:"&6E)/)\Z8>AJ)6S%--XN&FP%MY_,
MARRA3$FD<+5*?GA][2T1E'EX5(>$GS9=I+:Z"9IDO^3A[O!.DF@&(A-(L),Q
M[0BX;,;;:-)"[' \1[%N-)K">8SP:EZZU@]HHQ1"@R!*^,P+'XWGT7PXE,X;
M\]$86VT,1]$B79R2>]J2+X)9%[]Y2OP]A0KMT538$7,ABN=I0O(JR;KC=,C=
M5S -@WR:M"W+[^:D(<SB^7AL^INWFTTGF,3H(05/7[&!O$V(5?YU=  OLZIZ
ME+8-.,\<N[:0G-I;30RUCP3_"](PWP#(Z #28[A[3->49HVM8YBF\60ZC,8
MO\,9U8QHWN[E*)ZG4Y6EYVT)V8PVF8/</X[&PW@Q683';D_D;:L1/<P!Q #T
M!3BHYEF2H^.J7%^AMUR>!W!*0:[7,^4=8]?M*39W::\ON(\9]1N:P8E-HA][
M@.T"-S'GNA@IG.HXL'6@Y0KKYQ)WY+:\W*B52_EL-AJY@!44M\7AP";X ,\H
M"^2!FZL2O]'>SLA.N6@[/8_>[&)59%7![F98+1:2I,@&($O%RA4>(&&BRY7;
M]A.<6!=[RK#OV\YDTG6>YJ,(7'5N!W0#/:@GI]@JGVW[8Y2;/(D&) U;TU"W
M]Z(Y@]_@63.,;+>NGE+:XI^MN.H\'-2A8(E$11E1C/HL4^U#8!Y9]=7;DU:4
M'><Q,OF-)#0G0Y,F_TT.GM (IAEU6M(.%;5T"%R6*@Y@@*RWEG;;CCWO!S4T
M=I*B*=UO*Z1W.4[+AQWH!O?%OM6[F4K$DKV*K*69&BQ)0G6:#D,FWD9X<I(K
MR%T'W.51,4#2/B1+NC=G]4RS8KN/7-;)/AGLYF&>:N-:A[VEH3A9]]< D VT
M4ASI(H7DD',]CUJ.S%5):@GU729;Q+:DA.3/.?G#X93AYV>PA()(  UGJC-0
MII(OFM\9)Q/*YD@<.5 JH%"!U"<0I48GPL;?)%JW&TQ]FR=N)H4,QO%D@=+/
M!'CI%(T,%?$X,K&@\E]J-%1#XPUV,IL-L:KF(@&&.SQS$.L!<TU]XO%BY/YR
MXURN<O[T_/20>]B;%L"\G)'\C.5#+R<IVM%>Y699[$KG*^2P!]^H&<8GCPV7
M,B<6[21[K.J7&IDX&'23[6L.MV-%2[*0E2#4;45AFHQ.^R'AFM*D=5VO?JV*
M&L0G&=79'"*)@:%WTD>Y(8H:TQ'0!5_RSV,%'<9QI[@,:O^5'=':EMPUDBC/
M:=YR_K_ )NN5]J/7R$R,>,*Z,R<:L)L%2B-OI&BIJ7U!/0F<TYZUR5804T/#
MT4#%0 E:!97ZN,B\Y:7LW*]=*!X>(!57]> 62RQ6(3UN6-+1LPL/B2H".>6D
MVRK_V_D$!URR0!&8)"12P6T&$^-U[>&^P_Q]6%T6)&SO"JZF1?:XRW53.>?X
M4&4! 1SP-#WH1=?Z-=.RM+5S5#;E@1L.EA-;]=N/-Y+B7*MU(4#^@JNB:.4'
M6TZ'*0Z)(%ABO\/,8#@<QD^2,TU[X-()<V23-#KBP3PXC<F_"I#*?208Q<BI
MAF$G?JNZ4SU*QX%;>UFSV5.\M62[HX0PY*DRBS;(R90,A0RWY_#QRFF=(-+N
M6M#@:]JST[]C[7 -C7Z5= !2IFA"0Z+"C>V::/'E[JYD0KT2%JL4A'\/"4C0
M==C!=*L"L0]O]#'$S7(>=\=-5FTHMB.GD#QVDX. 4=R77-@I6[$96<I1U"(K
MNI8^+ H&P$HQ7S[D$F\;B\5P>VWVP/<Y(,,%J@9(0VY+0#;U46,3"XDBT<-#
MY_]1@J,Y6J(!,>J:8/,E$R^,(-"2+FH[-QTXRO5)0#E-Z<.]F/ T*HHMAW*P
M[EB7U$A5\I6&!D(:=[-Z5(F=KX!HIK^ 0?0OY0-:_YF;F$(B?"0$9$\7$@'&
MQ!U:R#I?J['=YZ=[6#/C<NN3NMQ\4=S;PDP Q#@;!GT5-48M\EP^&/^/M5R
M-EM_,G"1C^4)>&I$Y-;'Y3VO3B(FEH#.J)!L4&"]8[)PP#[<Q";]D[&1LSBV
M1)WQB"*"MNQ%D/,#^#K@5Z8H";"_FB-O\!:5,9)MP7(.#)*F+\VI2JD6-(.S
M#PJ/3R.Q\Z^'*$FEK558L*50R1/.165/>DDC[D+%X(]/RO\A4#O7"=\=5KQM
M>4-=])_3'ON5B]Y=,2RR]2=<;_]@?3HZ,2L H-N<X$1?U[KUWEE&5_@@"K+$
M>E_,C!E#IHK5__E%0N4U6T%H<I<+LB,,9 7@#*K:37['4/9]CIUZ]G";P/>-
M&PI Y,:<\DL-@FXUV>&!L'%2R94B3P2.S%$,_:TK"&"##4(YW\/.5G*L>?P
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
M-5G[8O:,R_S0?#-A)QB1' _>X]JLV9YO;NBH-DTP"18G'Y((*._V#?>[U9/
M<+*6AASE@HJ^V+5%+FQ==.B,Y@ZIJW%(I. [!J0FL.:")T'#PHB"1FJR2L@2
M&>JKK^8MX[1$7<5M4:6M+!F*_H*W"_Z1::]ZKG8E233>K5IG,>"^#+=*8[I8
M75CM>V'U1DW7UX<T'\<QE#!/%P9AE>KK9<EW5BN9!F$UHFJ7OCZ<Y\DS*D+:
MDICH9;B6B"'K!_VJ6#45X*>TO^72I.J0Q\-F3OMVG@$,TG6@VR_H.M)'B"@!
MD.A@6!I'+LB'Y"N&>M9<*:=JU0Q3FQV!\4*;_M1Y*CW0.L["%51X=1IB#%[9
MQ7J[L9F"8IY5])YE_HID->!/OM]R!-G:5SK(1 9!JA.A\3.,YXJ3.&4>]"T[
M]TF+X@_GA+#[]8,\ML)+W!YF6:K76!\+;9F_>)E\PM@ESJH\9])G)G+.99I4
MZ:SPD+\Y-K-*PR,_,05U<7W/&8'B_$Y9H;2CE 9SO?QNYM8RC6$^^U 'J6)K
M41P89FN2FPV-?XSGF2U()ZZBWM,Q1LIW0SM,F,\V]1#72]NSA/GWS:3#C--8
MV!-A.>U L"KA\*SR(K![4X;*G)"UX+V+<BK25AK@L=Q<]M2!YU4N^?C0F5(W
MEO8GA/.]T\G%75Y?.#0E475!%&HX6JV4I515\^BPL%[%'LF,;D1C')KDY/XQ
M<B9P%U>^\X'RHVQ<0N+'HO$)<W(*%_1/"!I2FJT'^\J<<4M;O60.E)Z/RA*Y
MBATD+QT*S G>$=^4O+_A53 6L>B"Q4!BR1EMZ=V 0O/.=5-V@R=/=YCE*3J*
M13 /]!STT*XN'_0N.')=0O)II;A@DUM^2Z>[#P$@GCUP72AM:>5@8E#ME>*'
MH10+QOB2B+\BYG.^AD/W\D&?S73M<6Q3A8^N[E<L$'<;7;DK2[O$0>.I.S2
MJ+HC138=UV7<QT>4(\P;'E%VCI<W+O*K&7AJGU=E+?21UF<+1OWM1A\,*6:D
M<+J:\_N$P57,CQ1I[>/0&!)6ZI&E!";+3I1.A2[HJS(U3Y(>2:!RBMVDH03&
MSBBZ7H_NKS")=<H%6Y&8:^<_2GF@'%@'3 X1</94%8$K$9>'&=P+H%ELY4G!
M@D,>4UV<37GE.M9A<V#<Y(I% D+"!A]""2BO&>>&;PE^F+-*\.Q#6'Y[O#VF
M8Y'8144?RL6KOAYO)E,"?T"X+/X850J;P=NW[R?.^[#)4,M[\1O:9'@HCFRR
M=^[T;;]HAB&]HPQTAM@YG+UWX_P"MP@7-@\L!X]2JD-Z3!/WG=58Y,Y5:DI
MU5%6?:<*PWHL/?V[FY,)XH:1ET+R%!L6#HYGX436EY*OXNTMB!2"FRC,K]=N
MR%0\>=+?+^'6^Z:X/B6E;>'N/7%GB\0^$6?[38F^)]N4Y';CGO_NA<"Y-M\8
MK![N;E-+$)Z16?+&W5?2(@A9;POFA67<6^?-S:6"B& 0"8(<4'>65,PHD0:E
MR%)6J=EEI?,"5H@U!=$P79TV[NRT!WK+6MFDKMD2J>!040YE*1G1>;)]H]U?
M8ZX"VC7OW0BO"B;]N-DJ6SM8'V-L2AK]UES)JGB3DE=9;]-IPL:<5#8>Y8V@
MF_MPO=G\W;@P,>W&EB;KP/":1R/S'<UIJ/Z&$"4J[5$'CM;F&TP*R<,-VT=!
M@/ 9NTL$'YZRT5#,5LO;OJTF,.HN55V =H89;7*U'=BN4VX> :T\?5OOX ";
MH)QY]\"H6/\J%\);*KF@*/^&_IM2+P[9A_0><Z(FBSV((NT"DT>OK7Q51VF,
M?Q,?5J?6\L+;TI^OJ3"6LO>_K[9+;;+I.A$OH4JAA)\[CC<].::T7-NP#\L[
MVV5J,_,F>1I-1LZXU4ZGH%$<'L-O\PDC33Z[S6O-@+%U4Q4IDQ]14FUMY:2X
M]W]QQ% ?%5.!]3G<X+OA:N[: F6:[<^]'@\"#F-XCI*R5T7:Y7-BK4KKKL 5
M:M*Z*4 >E>-%^Y[[*U2G\[;%L)+*H6JRM&JJI&[3LJF3JDR[-H.AJJ2NY #^
M !LH>9$<5'6:U27^JRS2MLC@7VSVR=20 UC#EA[/X!\5_B.'!MIA\O**J:O\
M[YJ.^SD^9UV3-D1?56=I41&]5Y'653L^9UF6=B"A1Q9V7 J0T(F.3E\G];P6
M-/59EYN?[*3G;9.V\,%9UZ9%@X1@<]I?8M[S$H;;T 1F,."Z03+Y@S9+\[H+
MSSPLRES-?$5L\?";JFZ&9SXKRG1>UO[T#,+N&3BU_E._H]OMC6X7 3!4+C=S
M#>^''QV<&US]M&)^MSPMBBXV1W5:=F52I3EL^O!L-1UL\@)D/\WA^(A,2M&E
M5=%2PL \&YM<I, K"M3[,%'A]/Z,\VTR.(6:NH8!Y["WYC31+^,0>NV<./WJ
MBHZN\!1SA?WSI*G@[".V3+B0\CI$.S>>%Q(BJ?H]!>7?/ 7%3[O@I*\38?[$
ME3[E>'REB?_B%*''J^WBZNIV>67$0??T-VH]^82DS:_6,(,[O!L6P2A+[85M
M:&G9MIZ0L]8E%PS1U+YY_^8H*6 ;-O4<E$&X_>"ZYALOKT Q@+LX!U.P*[22
MJ4<98:J-K@F9A3HC-&6<(]IW/YK:C-&9C^:D]I9]QV6PZJC- : &96"3XN7Z
M+XH$Q*9H#BQ.;&T"R//Z>,Q*U/]02<MJ.'OA#'X=&E(-*YC!7=%4=1][?T.U
MW'9\HHI+?P-FK9RMN.9N>_X%U"$#OQ54U)VRO2^J[HU"Q)K)VI)#,1\Y>J=,
MA>MB/0M_A07U84V/,:V7)AN(Q[!42 7VDZ@6XYMVHVFU'H$O1&#=Y6V'*^E:
M1^%TJ;$A"8V4AQIA$ 'PH(#([V 49X/3H!(S(K6#7D&J*!#6653ZL^U#/#T[
MU(!&<XU#U4F@KU9>V'[61,N^U.1Y$_-@ =JWYNC@8D+,4;ADQ4U% [@,5U %
M;/U$WM!]8,3*K&7LACB1*<3AHVG@SC!9+^'&/YBT"'J0W0$CK2GWP?B=\^F+
MH/7<6E56U^A2$<& ]>S+PX=>%@<5O8-F EI<D_Q%DRV*O\%9W]7J%G!> 8VV
M!7OX!/WT:S,B3J[HY8IL@]#^%C%/Y3*QN?<\RT5Y$,F@K!?JI8YX7B1UIN%<
MJ:0)T&UO=$!AS610;V&V)DR_\Z+)IG+NDGX^Q*A#PU\2&I$AUM-U'GT>D%Y9
ME)>#\U(LK4C\XK3Y_G* ,9I6H->=!')].-BJZH<U.!1YFZE+D5'WLB]-6W8P
MY+FGT)&Y!G+?VRVIU0.0,UPQT(POC'I4I1X-92;U=\@B4E+;7R9BNL%]T14U
M)0C /_.ZP'\B*WB%NO@\+^"?65GA/TNXF(MYR^B2[%L'R[^K&K5WB";K7B7?
MV:Q7L(I@PN:9LK-6RIHW5:*@FY6@A2DF;HL$HLK4HJW6&>QHW:IF?B: SW#6
MEYRS TH[ZEXD2*9>, 8YF=+^H\_)H96WTR@N8V>HW+2",'!SV<,QGV+[;<F-
M;+!ZJ%BKURA=/"Y >G_Y:4_B&5?%-;:##'UV8+G7R0M!))*!H(#=K/Q'O*?R
M=%Y7(10";JF<=S;;0SNSWGE@TFR+L3CUN0%S.*<+]$Z>WZ*OWX)*&$!:+03.
M2I=I6<V-M\OY4]VA U(=_ '60?CTK,1'T-;M#^<Y3D,+F^0'@K"Z%F0.@OP0
M/9=E87KIK0GJP?#%'4WT)YNQ%:IKTI595,S-1!<!MV]J*8<T?*5B';($DRZ;
MI1AMN-KE2<6M:,@Y/"AQ.1P(>2WDK<!SI[3RT\[3$@XT7WS@P0H,[YY@EE7M
MBE2>P<*VA1T%G"KTJ0>@/A8D%)Z4'11IT> V<$3<$:=LGK;DW Z(&E@[13LL
M;"48/.27C4A;W<%7>W:H<[!$J9RG'"M&OFB5/80GV_@(DZQ(N7=@L!UG;%\\
MI!M6)(6\#D+C)UFA=*SGH+R5<!2-8-UWFL2R3+-*GR_/]6GS;S(7(]^8S_+*
MS K(<0Z'=FSZ2O4@.BD[K)>)D @D>I[S)C>SQIML2 [AT&%(2FTQ!@(!6)<)
M#YPHD_+@\_7B_@*=.B_"A] 75&WN]4-^%^+&5Y2]/28,@@;1$WBR.=M@PB\E
M,N@\R4P5=CKKD:JL6.'>4_KK<.C.E(F>&+]2-\_2.LNEY[3*TK9MY&^$:S;J
MB\QF;3OD?82_S^.$8#$5Q3[Q%/&"$X+3T/17()%IFU,4F/S#;T&I(ZA"KGO*
M0,6J0.ND*%5)_J&J28N2G*=UF=9%,9'"*?9Q/_CP]?YVG:*\:?ST/10UPQ2G
MH35]T@:#SAXDBM/69.NMPROKC)"ZOQ%"U//@5H73[J.^ID6*APP!MJ"*OS$N
M=XWAP)K5^0-[-U2H@:[$4L8&>Y:']L5DI"G5'"15BA'HB]7TGC#^.]23MG&>
M4U]-D8=!Z$?O15^EV)=\->(<):_(D0@U'3%U"G\GG@-3GO )97!GM6E&,1A0
ME#$0#"<UW(VTY^JTX[]@4@1*0P770Y%\TAPT";Z(_V^"SKV?8Q<)NL?!-@3U
M+$<'"[0)O\HQ*IT68 YT8#C58Q<79FJT<_T?W6,!>EO787B]ZEHT4L& '+BH
M<M#Q,$X.^A?:L%D&XZ\*<V<U&04>X<-!$IM.12NKG/\TKS#[H:S3IE7SES?>
M@?.FS\&QD.NBG4,.+RA;(Y.4,8_A8^_6#="6EE<,HFWOS\^72T;%EJ>*CZ0\
MX-=YK4!O]8UF/1UOM);,\ZT\"QB24S$4EC[ZF3P-_*>FQ7]U\#/Y'+JL4K^J
MNYI]#[EY:LY/E4G-OVGAFA".""TV)6S^0OVO45C4-H"EKQJS] '"7-+XS;=,
M3,'J&0JQ9HTA(6 ]]KU;=9N&^I"B\&U%F5 9Q5WU(Q;TV!11PZ,%[ 6P5BJ.
MUM"#9YOK^RU.3043"^=$GM?F;YA8MG5N3@;'5:5$VGJ"E_&&@1$48(3IE]6C
MH-%>PL6F\A%0N< !M#D<104HEZ]W\]^PVT8ONNY*@V!Q6?_B3D+5P$MX76&@
M&/U=[OS@T=6@?% 62YN!(=:J4\//8CFVX-03P.VGZ!22P@%^#$/?!Q6.*2]R
M:N9 _IDPMQ1\MK+LIUQH=C8X7]7%Z];P[6(X+S4@F+WJ5=*RB$)^</PYZF##
MDZ2M*LKURJ:TXNV]'%99"XT<N#MHZP8GL/%'C;A46BS<,),;42]W:0;&0@:;
M8Y]/A5Z+HIKRJG!^BAU6@K[5=%X"I13;B+@1I#LCJGM:.#'_'G!2]XL ]W*P
MP4EB-2KE@C:1(XE["/L/]M-Z /KJH-%JIF7=@..$U(VTJMN09;LUB$N4NF;T
MX8N)XJF+._MQTO[WQX?^X?6[A+[?3#XZX?SYFC)!$\2-?)YEBQK70=W6E&RH
MG)]L!O58/VVDV_7#"&&QC2LZ(D%[L+W9&+:M^!P8=@7,(_#F5XK9E%FP6(\.
M2T#T]Z_'L'\E:NY2@JX-C]5);7#S6NIFGLYI$4R&"YU239J!&O&#8F50<Q6<
M%,<2F')$OD1+1MNY[DKT6!N.4"0)E-.L"YW]M)/T^?V<TKY B H4HJG\"Y.N
M8Y/9'P'G4('*"Y>5@:NX;C'__G:E64Q"MW8_+^(I^QN-E\<F)F91:QX'3;2
MFU4S'QSD+Q2OV\N1R@!$V^5<?<V??5"\<!;39/#[][,CTQRYRV 4QE8%#1(N
M*_VCX^F/S)SL& S-@M0^_:L?9<1Y=!2RJ:9JQ<^^JW_":'I-_+M(BS[YIDK+
M>S"@'C0;!O+8;\E.:XJY,QO&_3 F7*K(1 N7*27ADA/;S*32D\F2US3UCF*G
M/Q'&6[09V<38X_XB!X:T,V=["5V_$;MJN7Q%4&Y*KM, R>#=9 X6E_0E+-'I
M(%$,\>=^7:T71G'>N+&WE<=SN$TM^Z4:LJEA$U]#]?R8\X>HRK>;L\VM!E<2
M#TE&%RK"NC_##&.%^TD6_OUZ;?+T[RSDDSO,&>T/O5?&9[T_;H74052I8GB4
M9_=PH^B.M:II6;W,L>*$IR0#*?6@"1T7L'N0VII03JD>_YYQA37#BOD^^7D/
M?<H5_I8[0WPC 1FWAJA%P:>1DW/UCWN"$#>%F[H 4_6[N X3-')+6RPP].54
MTQM1\A$]1^.2\-^:LM@UM,4J]F1U1A=;!-7>R4DT,R]+VC!(]54G"5W0<B#:
M@\&U$IAE^1P']YX80="GYI/Z1<YN>0K2F3*0=FX>/%Z>3<GF&XL$Z ./F]:
M/.?]<_F GYKB[U=GUF0>I*@"^,5N+\==IGVO9Y9-5EF,?_L1JX_>@;:^]?/J
M]FAN/%DO1IES=KM<_!U)!KY?8\.ZCUX'OT8-8M^4P<ND;&O^+Q<_@)V1)R<Q
M\IHNS>#Q1E4'S>==<AKD2RG2 OW!:5OF\+]5DR4_*&PB2NR^P#0Q8IO 8[Y+
MF[)+T-BI,PI2@.6@O<$YW,$E&CMYE;94TP$;LZFR@6)="1%*92<FE+=C%-!I
MR(0#@[&^'N/RR^0GP\UTRK4LNK0F.5(U+F]^7MZ>KZ@,##-PO+^?++^"V84#
M>RU2Y3_AS72DJS4PJ0;T0PP\T]&!JL '432S$&C/!0?,:UKB-LT:*I#)9WF3
M_(!^:>@ZFZ==4R55,RL*,[X+."/K)LVIKC!O9PTFB,(N1T:7@ZS%9#OX0U'/
MFCS>MXYL-EF>=A7U7,Z*TO3<5^U$YWG1I1CFA#Z*63F7G6,&#V9KE?4,SM=8
MY^8X*^L</B/CSJMJ2N=9CDD7&,N$F>HJV3D8(CGF_Q3-;%[$.]=G7Y'#E\_Q
M3"VJ&?PWGY6-3@"I9G5E\HG_LC3P;1ZAU^-:5M_%FD;DB,Z[(LVH5!87: Z-
M%95MK+"8NO\G]G_6062D=&6DU!@W5(_ (SE#G+&>&VFX1@$A^31%&Q>7,45;
MR"V(] [5'.5#%S$L]<9SB-T$&^;J^A!^<_B5K)X(.("(&;!K!0\0QF1(AFC>
M]DA$&".[>_31]-E^ND!>9NQ>[UBB39,<X[(*E67TT.F*"HZ<3@FI/7**CFO,
MFWP&6UG)_D%196E%B9BPYQMRQB.'&^7=9>2CA[]TLVK"B=,5;5I2Q+C*9KD]
M<8HY5BZ629OA42 [;C-T<Y8-BK_H&-HI:BS)KN>S.MZQ.6W:JE(^L+K C:,[
MAGL63HXJ:;I9EXF.X4C.\#RIRAF\)3IN*W7,-376,8Z>-"VL>4[.F::8M5YD
M/"*YLMSGB05X(@7B_G+L">GX'5@7:9=E2AP+<0-6:5W-U16H%R<OTZ;#I2^+
M&4=I]-KD:3-O61A!QQD5QKS,2<EYCBUU=A=T&=5)U^VLM")1U1C/Q,;+OBBF
M>8YIKV4UU*N1Q+PI2;8P-WZ6S4VO#=R?</MG>8['H^ZV@2M=;[W"W7J@>1$H
M0=/.X.H;%<0\JU4>![Q0>B%\Z<0]%0#<!OC[.Z&@OC'@X"0I)B/J(VAV*1T_
MK"\?"2MX7#D?:A7QH]XO'GS.(F,$DM!BN3OQ8MQ0Q3M?+K3,@XT?/'MS^O$C
MD4JM5YP*8L'%$7C)I&:'ZP %1+WF?+U9/-S"%K3,3$0QM% 7W/(?J#C"%F\K
MP\T!V]76O)&YK'P&KM6LJ!C,SP)F0X$W,+C$=O7S(>7LP@^7S''G8YO_A+
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
MKOF,,(WA;]YV.4Q."9N<DBC>B42N [4=7B2'R>?3X^3@.=KG(!&?M$1X>V
MZGR79U..HKYG[SL%4WU=?BB==B@-#+.S_#DP."HG%K7&H&[O,Q>G;UXG^I!/
MDRP_G'<R,(.CALVB^=%,]X)I9NCZ< '!CS?W9W>(MZ&;21&*ZNOJ7M&=L_II
MO\RO\)R.+_ZW][0M_0LM]+WO%>@QSI0(2MEYQ<9/M(7SMQ,,:+QENR*>EQ?4
MY7RON0MF[OU]*HAY +2!O4#^Y:',[G#=OCB)![[,47R&5ZD/EA];F,,DAC.A
M93J(?NCA5L?0*U**X-WU&A\2WM?,,*:0_QAHUG3I,"'CF>1U/!E4_+__MZR>
M_VESR?\E8\U+, TB?>_TJ:D$N^F_J=*$/&0\!0CW2P23O/]\/M9,$(X\_OBG
ML0>&4<G[[Q61X8$%L<M7VN>G?8YY//8YYH'=/J<)?\X.U"=.$>P>=P<3H#PD
M'[YC/OE/FSL$H+A _%J^$^EZ&MIB7";XHRY].UVPI8%">_<@;WDO!8"?.#44
M+(8^5X_@6"6ZTQALME.J2N,>,6OO9)1F]UES7H]CNP9\2/Z1B8J;:N\CK"2G
M0H>']!\Z, UC0TQON'SM+SY9Y7EX\ 76$R&\%VG.OD#<S(PAUO\C*,<S0\'D
M[X';F3;/O#]RL\J:"S:KR8S#S6;A/UJ* *V]AJ:S_]8$F'WORIT&L!]\;3D)
M8?\1T@Q"A.%BKD8>%68I-.\Y[< ?]_+<3+JGEX2&,'P);[_04?P-SH:0?CX4
MFDA#<4T3R$HER34^<8D.*4E.T8\+/&'G3_H=6&_B /IJQVG()=LKH_$6"!;G
M0@NLI;A"HYHAA!6*/=Z4)LH7,/O0)F=9\:M=-,01V#NHL"O$]Y/5]N]P"89,
M'+@[OV^$ RRF1+H-WF*#,"+\%>P;3UNI9_7\#]YOBUGF_W9XR-K(A\%_7?P3
M"TPBX\NS6>$WGC7!WQ:SRO_MH'(]X0[12(ELR_AQ8!\:/4Y5L?O=-T"9,7 &
MJ&>\UC[_].[3F^/D]-/1IS>GL4\9P&E/,5JJBMRP7!8Y\#"NY"D;&(6,+2DL
MB#%<KSB!,?+D(.Z\(9[8?5)C'R?0L'M=_]._ND<;F?(U\J[Y\_W%U8B#)G:!
MG"RQ3MG6-*9C<NZ_,.0;"-J1^TR\AS^NLE_''_22GH]5065R A=/BMK'><#R
M*&9UYIT(XXW;:B1F%4!SM=]*I[.U-7YK5B47BX?Q3\&R-/_<4=#_ \_T&MJF
M!/ZO,<&(],A;9AW!1,)R9G_Y(/#EWTA\^3Z30E2.U>H;O'@XDZ+O[B$C4[#J
MM=BDR3%LJ)\PE/+I^W(-]R\KVX]OD^*2<(4^54M?;I?>=;IG6V\W][=/U13L
M[L<WQ2AW3]?@/@U\OA85UBJE)VRWQEOQ59A=<-^F]Y,B6*0*,'LF5A"Y_U"
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
M+MG<KG>W^;;JGP@SKRC/OP%02P,$%     @ DX!-4/*G>&P\ @  WC(  !,
M  !;0V]N=&5N=%]4>7!E<UTN>&ULS=O?;ILP%,?Q5XFXG8*##89-36_:W6Z5
MMA?PP$E0^"?;[=*WGT/;2:LRJ543Z7L3 L><\X-8G[M<_7R<K%\<^F[PZV07
MPO1%"%_O;&]\.DYVB)7-Z'H3XJG;BLG4>[.U0JY66M3C$.P0EN'8([F^NK4;
M<]^%Q<W3]6/K=6*FJ6MK$]IQ$ ]#\ZKI\KEAZFPWK_&[=O*?XH)D\?40N_AX
M;9W$JD_$&R:\OO%X'N_[_F"=:QO[KFCC9M/6MAGK^S[>DOK)6=/XG;6A[U*_
M,\XV/X)KA^USWCOCPC?3Q\;BT(E_%J27RQ$>.WLZP%PYY^00MX4]-6HN/'UF
M'QKXLAOJT=GEY&+5A?;$X\5(=['JQ7'A.1_1'K=.8YLW#8^M+_?#_A[=?OY^
MZH7_+7HQ'S[VUL^70T)R*$B.')*C@.30D!PE)$<%R?$9DB-;48)01,THI&84
M4S,*JAE%U8S":D9Q-:/ FE%DE119)45629%54F25%%DE159)D5529)44625%
M5D6155%D5119%45619%54615%%D5159%D5519,TILN8467.*K#E%UIPB:TZ1
M-:?(FE-DS2FRYA19"XJL!476@B)K09&UH,A:4&0M*+(6%%D+BJP%159-D553
M9-44635%5DV155-DU119-45639%54V0M*;*6%%E+BJPE1=:2(FM)D;6DR%I2
M9"TILI8462N*K!5%UHHB:T61M:+(6E%DK2BR5A19JPO*.A_3WK3#_Y+\&L?]
MRWPQ_ZWE^@]02P$"% ,4    " "3@$U0'R// \     3 @  "P
M    @ $     7W)E;',O+G)E;'-02P$"% ,4    " "3@$U0)^B'#H(   "Q
M    $               @ 'I    9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0
M   ( ). 35"HL1.8[@   "L"   1              "  9D!  !D;V-0<F]P
M<R]C;W)E+GAM;%!+ 0(4 Q0    ( ). 35"97)PC$ 8  )PG   3
M      "  ;8"  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ DX!-
M4/*"; *, P  5Q$  !@              ( !]P@  'AL+W=O<FMS:&5E=',O
M<VAE970Q+GAM;%!+ 0(4 Q0    ( ). 35#7-1F\2 0  $44   8
M      "  ;D,  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4
M" "3@$U05+5T.1H"  "?!@  &               @ $W$0  >&PO=V]R:W-H
M965T<R]S:&5E=#,N>&UL4$L! A0#%     @ DX!-4*<F33LE!   2Q(  !@
M             ( !AQ,  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4
M Q0    ( ). 35!=@],5F@(  )H(   8              "  >(7  !X;"]W
M;W)K<VAE971S+W-H965T-2YX;6Q02P$"% ,4    " "3@$U0=D!HG:\%  #+
M'@  &               @ &R&@  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL
M4$L! A0#%     @ DX!-4%H?I+]+!0  'AH  !@              ( !ER
M 'AL+W=O<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    ( ). 35!<5 P*
ML@$  -(#   8              "  1@F  !X;"]W;W)K<VAE971S+W-H965T
M."YX;6Q02P$"% ,4    " "3@$U0 O:[P;,!  #2 P  &
M@ $ *   >&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ DX!-
M4,NRC<FV 0  T@,  !D              ( !Z2D  'AL+W=O<FMS:&5E=',O
M<VAE970Q,"YX;6Q02P$"% ,4    " "3@$U0:S-? [<!  #2 P  &0
M        @ '6*P  >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0
M   ( ). 35"&Y_R"M@$  -(#   9              "  <0M  !X;"]W;W)K
M<VAE971S+W-H965T,3(N>&UL4$L! A0#%     @ DX!-4"58Q>*U 0  T ,
M !D              ( !L2\  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q0
M2P$"% ,4    " "3@$U0M+%<)K0!  #2 P  &0              @ &=,0
M>&PO=V]R:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( ). 35 \"=>@
MLP$  -(#   9              "  8@S  !X;"]W;W)K<VAE971S+W-H965T
M,34N>&UL4$L! A0#%     @ DX!-4):1OG^T 0  T@,  !D
M ( !<C4  'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " "3
M@$U0\F3-EK<!  #2 P  &0              @ %=-P  >&PO=V]R:W-H965T
M<R]S:&5E=#$W+GAM;%!+ 0(4 Q0    ( ). 35#C]VJ.M@$  -(#   9
M          "  4LY  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#
M%     @ DX!-4%M 7?:U 0  T@,  !D              ( !.#L  'AL+W=O
M<FMS:&5E=',O<VAE970Q.2YX;6Q02P$"% ,4    " "3@$U07*/%:+4!  #2
M P  &0              @ $D/0  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM
M;%!+ 0(4 Q0    ( ). 35!8XE"VLP$  -(#   9              "  1 _
M  !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ DX!-4)?%
MB@ZU 0  T@,  !D              ( !^D   'AL+W=O<FMS:&5E=',O<VAE
M970R,BYX;6Q02P$"% ,4    " "3@$U0YPM?,[<!  #2 P  &0
M    @ 'F0@  >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    (
M ). 35 ,KXKRLP$  -(#   9              "  =1$  !X;"]W;W)K<VAE
M971S+W-H965T,C0N>&UL4$L! A0#%     @ DX!-4$OF*""U 0  T@,  !D
M             ( !OD8  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"
M% ,4    " "3@$U0'=_*-K4!  #2 P  &0              @ &J2   >&PO
M=V]R:W-H965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    ( ). 35!.P-Z^Q0(
M .,+   9              "  99*  !X;"]W;W)K<VAE971S+W-H965T,C<N
M>&UL4$L! A0#%     @ DX!-4/X8NY#B 0   04  !D              ( !
MDDT  'AL+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    " "3@$U0
M"%#_.L<!   W!   &0              @ &K3P  >&PO=V]R:W-H965T<R]S
M:&5E=#(Y+GAM;%!+ 0(4 Q0    ( ). 35 V"&TEM@$  -(#   9
M      "  :E1  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%
M  @ DX!-4+]$>FW3 0  G 0  !D              ( !EE,  'AL+W=O<FMS
M:&5E=',O<VAE970S,2YX;6Q02P$"% ,4    " "3@$U0%..K!M$!  "<!
M&0              @ &@50  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+
M 0(4 Q0    ( ). 35#^WS52N $  -$#   9              "  :A7  !X
M;"]W;W)K<VAE971S+W-H965T,S,N>&UL4$L! A0#%     @ DX!-4/DA_)&V
M 0  T@,  !D              ( !EUD  'AL+W=O<FMS:&5E=',O<VAE970S
M-"YX;6Q02P$"% ,4    " "3@$U0\<BGFM,!  "<!   &0
M@ &$6P  >&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( ).
M35!C6:_$M0$  -(#   9              "  8Y=  !X;"]W;W)K<VAE971S
M+W-H965T,S8N>&UL4$L! A0#%     @ DX!-4-P)P43$ 0  -P0  !D
M         ( !>E\  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4
M    " "3@$U0#SQ$PK,!  #2 P  &0              @ %U80  >&PO=V]R
M:W-H965T<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    ( ). 35#8[0?+M0$  -(#
M   9              "  5]C  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL
M4$L! A0#%     @ DX!-4+;ZR+#I 0  9@4  !D              ( !2V4
M 'AL+W=O<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    " "3@$U0E-5M
M-K<!  #2 P  &0              @ %K9P  >&PO=V]R:W-H965T<R]S:&5E
M=#0Q+GAM;%!+ 0(4 Q0    ( ). 35#995T.[ $  &8%   9
M  "  5EI  !X;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @
MDX!-4!]4D->S 0  T@,  !D              ( !?&L  'AL+W=O<FMS:&5E
M=',O<VAE970T,RYX;6Q02P$"% ,4    " "3@$U088YZ-+<!  #2 P  &0
M            @ %F;0  >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4
M Q0    ( ). 35!KLSKW-@(  )D'   9              "  51O  !X;"]W
M;W)K<VAE971S+W-H965T-#4N>&UL4$L! A0#%     @ DX!-4'O*'C** P
MUPX  !D              ( !P7$  'AL+W=O<FMS:&5E=',O<VAE970T-BYX
M;6Q02P$"% ,4    " "3@$U0VR^%);4"  !I#   &0              @ &"
M=0  >&PO=V]R:W-H965T<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( ). 35 "
M'T-<!0(  &0%   9              "  6YX  !X;"]W;W)K<VAE971S+W-H
M965T-#@N>&UL4$L! A0#%     @ DX!-4,@Y I3& 0  2@0  !D
M     ( !JGH  'AL+W=O<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4
M" "3@$U0K&;)V%(#  "9#0  &0              @ &G?   >&PO=V]R:W-H
M965T<R]S:&5E=#4P+GAM;%!+ 0(4 Q0    ( ). 35!'QUPF00,  ,$-   9
M              "  3"   !X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L!
M A0#%     @ DX!-4.([MXT: P  4 P  !D              ( !J(,  'AL
M+W=O<FMS:&5E=',O<VAE970U,BYX;6Q02P$"% ,4    " "3@$U07S5:IA,"
M  !\!0  &0              @ 'YA@  >&PO=V]R:W-H965T<R]S:&5E=#4S
M+GAM;%!+ 0(4 Q0    ( ). 35!46T8ES@$  %L$   9              "
M 4.)  !X;"]W;W)K<VAE971S+W-H965T-30N>&UL4$L! A0#%     @ DX!-
M4%D0M>=7 @  1@<  !D              ( !2(L  'AL+W=O<FMS:&5E=',O
M<VAE970U-2YX;6Q02P$"% ,4    " "3@$U0["K_E5L"    "   &0
M        @ '6C0  >&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0
M   ( ). 35"S"RM,E ,  &H0   9              "  6B0  !X;"]W;W)K
M<VAE971S+W-H965T-3<N>&UL4$L! A0#%     @ DX!-4)45HOF5!   I!<
M !D              ( !,Y0  'AL+W=O<FMS:&5E=',O<VAE970U."YX;6Q0
M2P$"% ,4    " "3@$U0EM^RH*<#   D#P  &0              @ '_F
M>&PO=V]R:W-H965T<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0    ( ). 35 R_=Y5
MZ $  .X$   9              "  =V<  !X;"]W;W)K<VAE971S+W-H965T
M-C N>&UL4$L! A0#%     @ DX!-4*+PB 0R P  -0T  !D
M ( !_)X  'AL+W=O<FMS:&5E=',O<VAE970V,2YX;6Q02P$"% ,4    " "3
M@$U05Y2'MSH"  "-!@  &0              @ %EH@  >&PO=V]R:W-H965T
M<R]S:&5E=#8R+GAM;%!+ 0(4 Q0    ( ). 35 +V;6I2P,  -</   9
M          "  =:D  !X;"]W;W)K<VAE971S+W-H965T-C,N>&UL4$L! A0#
M%     @ DX!-4/D?GQY  P  <@X  !D              ( !6*@  'AL+W=O
M<FMS:&5E=',O<VAE970V-"YX;6Q02P$"% ,4    " "3@$U0R4PHVW "   Z
M"   &0              @ '/JP  >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM
M;%!+ 0(4 Q0    ( ). 35#X.L5'= (  (H(   9              "  7:N
M  !X;"]W;W)K<VAE971S+W-H965T-C8N>&UL4$L! A0#%     @ DX!-4*@L
M<88G P  ZPT  !D              ( !(;$  'AL+W=O<FMS:&5E=',O<VAE
M970V-RYX;6Q02P$"% ,4    " "3@$U0)J(D/7\#   !#P  &0
M    @ %_M   >&PO=V]R:W-H965T<R]S:&5E=#8X+GAM;%!+ 0(4 Q0    (
M ). 35"S9'?.O@,  "D3   9              "  36X  !X;"]W;W)K<VAE
M971S+W-H965T-CDN>&UL4$L! A0#%     @ DX!-4$H<!%M? @  W@<  !D
M             ( !*KP  'AL+W=O<FMS:&5E=',O<VAE970W,"YX;6Q02P$"
M% ,4    " "3@$U0^;SF,RP"   M!@  &0              @ ' O@  >&PO
M=V]R:W-H965T<R]S:&5E=#<Q+GAM;%!+ 0(4 Q0    ( ). 35"SXVNV; 0
M / 5   9              "  2/!  !X;"]W;W)K<VAE971S+W-H965T-S(N
M>&UL4$L! A0#%     @ DX!-4- U2+/Q 0  W 0  !D              ( !
MQL4  'AL+W=O<FMS:&5E=',O<VAE970W,RYX;6Q02P$"% ,4    " "3@$U0
M3 B=JF$%   R&P  &0              @ 'NQP  >&PO=V]R:W-H965T<R]S
M:&5E=#<T+GAM;%!+ 0(4 Q0    ( ). 35"&1S/,F (  !()   9
M      "  8;-  !X;"]W;W)K<VAE971S+W-H965T-S4N>&UL4$L! A0#%
M  @ DX!-4%F$*-.3 @  )0D  !D              ( !5=   'AL+W=O<FMS
M:&5E=',O<VAE970W-BYX;6Q02P$"% ,4    " "3@$U0[.(!7PP"  "(!0
M&0              @ $?TP  >&PO=V]R:W-H965T<R]S:&5E=#<W+GAM;%!+
M 0(4 Q0    ( ). 35#'ED!$; (  *,'   9              "  6+5  !X
M;"]W;W)K<VAE971S+W-H965T-S@N>&UL4$L! A0#%     @ DX!-4$]GBK(3
M @  "08  !D              ( !!=@  'AL+W=O<FMS:&5E=',O<VAE970W
M.2YX;6Q02P$"% ,4    " "3@$U03!\=JCL"  !'!@  &0
M@ %/V@  >&PO=V]R:W-H965T<R]S:&5E=#@P+GAM;%!+ 0(4 Q0    ( ).
M35#IVO@.YP(  ,D*   9              "  <'<  !X;"]W;W)K<VAE971S
M+W-H965T.#$N>&UL4$L! A0#%     @ DX!-4.Z<5,!> P  R@T  !D
M         ( !W]\  'AL+W=O<FMS:&5E=',O<VAE970X,BYX;6Q02P$"% ,4
M    " "3@$U0G@5-8@$#  "\"P  &0              @ %TXP  >&PO=V]R
M:W-H965T<R]S:&5E=#@S+GAM;%!+ 0(4 Q0    ( ). 35#X.0E/H (  #4)
M   9              "  :SF  !X;"]W;W)K<VAE971S+W-H965T.#0N>&UL
M4$L! A0#%     @ DX!-4 >QPQ>( @  S0@  !D              ( !@^D
M 'AL+W=O<FMS:&5E=',O<VAE970X-2YX;6Q02P$"% ,4    " "3@$U0\H)4
M/F8#  !?#@  &0              @ %"[   >&PO=V]R:W-H965T<R]S:&5E
M=#@V+GAM;%!+ 0(4 Q0    ( ). 35 +DA]1I ,  /,.   9
M  "  =_O  !X;"]W;W)K<VAE971S+W-H965T.#<N>&UL4$L! A0#%     @
MDX!-4*=6\RNB 0  6P,  !D              ( !NO,  'AL+W=O<FMS:&5E
M=',O<VAE970X."YX;6Q02P$"% ,4    " "3@$U0I[X1*1:F   @F ( %
M            @ &3]0  >&PO<VAA<F5D4W1R:6YG<RYX;6Q02P$"% ,4
M" "3@$U09KN(RV "  !6#   #0              @ ';FP$ >&PO<W1Y;&5S
M+GAM;%!+ 0(4 Q0    ( ). 35!P1D\OE08   LZ   /              "
M 6:> 0!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4    " "3@$U0K=UBY:T"  !M
M-   &@              @ $HI0$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E
M;'-02P$"% ,4    " "3@$U0\J=X;#P"  #>,@  $P              @ $-
LJ $ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08     80!A )D:  !ZJ@$    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>104
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813652304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_PropertyPlantAndEquipmentAbstract', window );"><strong>Property, Plant and Equipment [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_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property and Equipment</a></td>
<td class="text"><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="2"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">7.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Property and Equipment</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Property and equipment consists of the following (in thousands):</span></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="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Computer and equipment</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>13,588</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>12,339</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Furniture and fixtures</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>6,494</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>5,231</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Machinery and tooling</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>79,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>60,281</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Leasehold improvements</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>39,538</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>28,701</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Business applications software</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>17,933</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>15,638</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Subtotal</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>156,766</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>122,190</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Less: accumulated depreciation</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>80,778</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>65,164</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Property and equipment, net</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>75,988</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>57,026</span></span></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;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">As of </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;">, the net book value of capitalized internal-use software costs was </span><span style="font-family:inherit;font-size:10pt;"><span>$6.8 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$4.7 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, which are included within business applications software.  </span></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Depreciation expense for the years ended </span><span style="font-family:inherit;font-size:10pt;">December&#160;28, 2019</span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;">December&#160;29, 2018</span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;">December&#160;30, 2017</span><span style="font-family:inherit;font-size:10pt;"> was </span><span style="font-family:inherit;font-size:10pt;"><span>$24.4 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;"><span>$17.0 million</span></span><span style="font-family:inherit;font-size:10pt;">, and </span><span style="font-family:inherit;font-size:10pt;color:#000000;text-decoration:none;"><span>$12.3 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, which included amortization expense of </span><span style="font-family:inherit;font-size:10pt;"><span>$1.5 million</span></span><span style="font-family:inherit;font-size:10pt;">, </span><span style="font-family:inherit;font-size:10pt;"><span>$1.2 million</span></span><span style="font-family:inherit;font-size:10pt;"> and </span><span style="font-family:inherit;font-size:10pt;"><span>$1.5 million</span></span><span style="font-family:inherit;font-size:10pt;">, respectively, for capitalized internal-use software.</span></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_PropertyPlantAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, accounting policies and methodology, roll forwards, depreciation, depletion and amortization expense, including composite depreciation, accumulated depreciation, depletion and amortization expense, useful lives and method used, income statement disclosures, assets held for sale and public utility disclosures.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="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>105
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6813608272">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Nature of the Business<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_NatureOfOperations', window );">Nature of the Business</a></td>
<td class="text"><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"/></tr><tr><td style="width:5%;"/><td style="width:95%;"/></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">1.</span></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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Nature of the Business</span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">iRobot Corporation ("iRobot" or the "Company") designs and builds robots that empower people to do more. The Company develops robotic technology and applies it to produce and market consumer robots. The Company&#8217;s revenue is primarily generated from product sales through distributor and retail sales channels, as well as its on-line stores.</span></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_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NatureOfOperations</td>
</tr>
<tr>
<td style="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>106
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6819834944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments and Hedging Activities (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock', window );">Schedule of fair values of derivative instruments</a></td>
<td class="text"><div style="line-height:120%;padding-top:12px;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The fair values of derivative instruments are as follows (in thousands):</span></div><div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"/></tr><tr><td style="width:50%;"/><td style="width:22%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fair Value</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></div></td></tr><tr><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;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivatives not designated as hedging instruments:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other current assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,855</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>551</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>297</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;font-weight:bold;">Derivatives designated as cash flow hedges:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Other current assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>4,347</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>53</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Other assets</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>9,112</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>172</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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;"><span style="font-family:inherit;font-size:10pt;">Accrued expenses</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>47</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>335</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Foreign currency forward contracts</span></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:center;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Long-term liabilities</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>414</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>795</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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 );">Schedule of derivative instruments gain (loss)</a></td>
<td class="text"><div style="line-height:120%;text-align:left;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Gains (losses) associated with derivative instruments not designated as hedging instruments are as follows (in thousands):</span></div><div style="line-height:120%;padding-top:18px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="10"/></tr><tr><td style="width:51%;"/><td style="width:22%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal year ended</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Classification</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Gain (loss) recognized in income</span></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:center;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Other income, net</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;"><span>89</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;"><span>1,568</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div></div><div style="line-height:120%;padding-top:12px;text-align:justify;text-indent:30px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The following tables reflect the effect of derivatives designated as cash flow hedging for the years ended&#160;(in thousands):&#160;</span></div><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="9"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Gain (loss) recognized in OCI on Derivative (1)</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Fiscal year ended</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:9.5pt;"><span style="font-family:inherit;font-size:9.5pt;">Foreign currency forward contracts</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>16,483</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(686</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr></table></div></div><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman; font-size:10pt;"><tr><td style="width:88px;"/><td/></tr><tr><td style="vertical-align:top"><div style="line-height:120%;font-size:10pt;padding-left:64px;"><span style="font-family:inherit;font-size:10pt;">(1)</span></div></td><td style="vertical-align:top;"><div style="line-height:120%;text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">The amount represents the change in fair value of derivative contracts due to changes in spot rates.</span></div></td></tr></table><div style="line-height:120%;padding-top:12px;text-align:left;text-indent:30px;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:95.71150097465888%;border-collapse:collapse;text-align:left;"><tr><td colspan="17"/></tr><tr><td style="width:44%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="15" 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:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Gain (loss) recognized in earnings on cash flow hedging instruments</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 28, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td colspan="7" 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:center;font-size:8pt;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December 29, 2018</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">Cost of revenue</span></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;"><span style="font-family:inherit;font-size:9pt;">Consolidated statements of income in which the effects of cash flow hedging instruments are recorded</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,214,010</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>670,083</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>1,092,584</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>537,156</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;">Gain or (loss) on cash flow hedging relationships:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:9pt;">Foreign currency forward contracts:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:28px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:inherit;font-size:9pt;">Amount of gain (loss) reclassified from AOCI into earnings</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>1,889</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>&#8212;</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>948</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>(386</span></span></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;"><span style="font-family:inherit;font-size:10pt;">)</span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4E<br> -URI http://asc.fasb.org/extlink&amp;oid=109980867&amp;loc=SL5624181-113959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=109980867&amp;loc=SL5618551-113959<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=109980867&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=109980867&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>JSON
<SEQUENCE>107
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "irbt-12282019x10k.htm": {
   "axisCustom": 0,
   "axisStandard": 21,
   "contextCount": 201,
   "dts": {
    "calculationLink": {
     "local": [
      "irbt-20191228_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "irbt-20191228_def.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-eedm-def-2019-01-31.xml",
      "http://xbrl.fasb.org/srt/2019/elts/srt-eedm1-def-2019-01-31.xml"
     ]
    },
    "inline": {
     "local": [
      "irbt-12282019x10k.htm"
     ]
    },
    "labelLink": {
     "local": [
      "irbt-20191228_lab.xml"
     ],
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-doc-2019-01-31.xml",
      "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "irbt-20191228_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-ref-2019-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "irbt-20191228.xsd"
     ],
     "remote": [
      "http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd",
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd",
      "https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd",
      "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd",
      "https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd",
      "http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd",
      "http://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd",
      "http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd",
      "https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd",
      "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-parts-codification-2019-01-31.xsd"
     ]
    }
   },
   "elementCount": 730,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2019-01-31": 29,
    "http://xbrl.sec.gov/dei/2019-01-31": 6,
    "total": 35
   },
   "keyCustom": 33,
   "keyStandard": 453,
   "memberCustom": 7,
   "memberStandard": 52,
   "nsprefix": "irbt",
   "nsuri": "http://www.irobot.com/20191228",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:Security12bTitle",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0001000 - Document - Document and Entity Information",
     "role": "http://www.irobot.com/role/DocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:Security12bTitle",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2103100 - Disclosure - Revenue Recognition (Notes)",
     "role": "http://www.irobot.com/role/RevenueRecognitionNotes",
     "shortName": "Revenue Recognition (Notes)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2104100 - Disclosure - Leases (Notes)",
     "role": "http://www.irobot.com/role/LeasesNotes",
     "shortName": "Leases (Notes)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2105100 - Disclosure - Business Combinations (Notes)",
     "role": "http://www.irobot.com/role/BusinessCombinationsNotes",
     "shortName": "Business Combinations (Notes)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2107100 - Disclosure - Inventory",
     "role": "http://www.irobot.com/role/Inventory",
     "shortName": "Inventory",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2108100 - Disclosure - Property and Equipment",
     "role": "http://www.irobot.com/role/PropertyAndEquipment",
     "shortName": "Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2111100 - Disclosure - Goodwill and other intangible assets",
     "role": "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets",
     "shortName": "Goodwill and other intangible assets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2112100 - Disclosure - Accrued Expenses",
     "role": "http://www.irobot.com/role/AccruedExpenses",
     "shortName": "Accrued Expenses",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2114100 - Disclosure - Working Capital Facilities",
     "role": "http://www.irobot.com/role/WorkingCapitalFacilities",
     "shortName": "Working Capital Facilities",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2115100 - Disclosure - Derivative Instruments and Hedging Activities (Notes)",
     "role": "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes",
     "shortName": "Derivative Instruments and Hedging Activities (Notes)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2116100 - Disclosure - Fair Value Measurements",
     "role": "http://www.irobot.com/role/FairValueMeasurements",
     "shortName": "Fair Value Measurements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1001000 - Statement - Consolidated Balance Sheets",
     "role": "http://www.irobot.com/role/ConsolidatedBalanceSheets",
     "shortName": "Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:OtherAssetsCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2119100 - Disclosure - Stockholders' Equity",
     "role": "http://www.irobot.com/role/StockholdersEquity",
     "shortName": "Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2120100 - Disclosure - Stock-Based Compensation",
     "role": "http://www.irobot.com/role/StockBasedCompensation",
     "shortName": "Stock-Based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2121100 - Disclosure - Commitments and Contingencies",
     "role": "http://www.irobot.com/role/CommitmentsAndContingencies",
     "shortName": "Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2124100 - Disclosure - Employee Benefits (Notes)",
     "role": "http://www.irobot.com/role/EmployeeBenefitsNotes",
     "shortName": "Employee Benefits (Notes)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2125100 - Disclosure - Income Taxes",
     "role": "http://www.irobot.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2126100 - Disclosure - Industry Segment, Geographic Information and Significant Customers",
     "role": "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers",
     "shortName": "Industry Segment, Geographic Information and Significant Customers",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2127100 - Disclosure - Quarterly Information (Unaudited)",
     "role": "http://www.irobot.com/role/QuarterlyInformationUnaudited",
     "shortName": "Quarterly Information (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2202201 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "role": "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "irbt:ShortTermInvestmentsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AvailableForSaleSecuritiesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2302302 - Disclosure - Summary of Significant Accounting Policies (Tables)",
     "role": "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables",
     "shortName": "Summary of Significant Accounting Policies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "irbt:ShortTermInvestmentsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:AvailableForSaleSecuritiesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2303303 - Disclosure - Revenue Recognition (Tables)",
     "role": "http://www.irobot.com/role/RevenueRecognitionTables",
     "shortName": "Revenue Recognition (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": null,
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1001501 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "role": "http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": null
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2303305 - Disclosure - Revenue Recognition Contract balances (Tables)",
     "role": "http://www.irobot.com/role/RevenueRecognitionContractBalancesTables",
     "shortName": "Revenue Recognition Contract balances (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": null
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2304301 - Disclosure - Leases (Tables)",
     "role": "http://www.irobot.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2305301 - Disclosure - Business Combinations (Tables)",
     "role": "http://www.irobot.com/role/BusinessCombinationsTables",
     "shortName": "Business Combinations (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2307301 - Disclosure - Inventory (Tables)",
     "role": "http://www.irobot.com/role/InventoryTables",
     "shortName": "Inventory (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2308301 - Disclosure - Property and Equipment (Tables)",
     "role": "http://www.irobot.com/role/PropertyAndEquipmentTables",
     "shortName": "Property and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": null
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2311301 - Disclosure - Goodwill and other intangible assets (Tables)",
     "role": "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables",
     "shortName": "Goodwill and other intangible assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2312301 - Disclosure - Accrued Expenses (Tables)",
     "role": "http://www.irobot.com/role/AccruedExpensesTables",
     "shortName": "Accrued Expenses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2315301 - Disclosure - Derivative Instruments and Hedging Activities (Tables)",
     "role": "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables",
     "shortName": "Derivative Instruments and Hedging Activities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2316301 - Disclosure - Fair Value Measurements (Tables)",
     "role": "http://www.irobot.com/role/FairValueMeasurementsTables",
     "shortName": "Fair Value Measurements (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConvertibleDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2316302 - Disclosure - Fair Value Measurements Convertible Note (Tables)",
     "role": "http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables",
     "shortName": "Fair Value Measurements Convertible Note (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConvertibleDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1002000 - Statement - Consolidated Statements of Income",
     "role": "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
     "shortName": "Consolidated Statements of Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "irbt:Costofproductrevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "irbt:SharebasedcompensationexpensebyclassificationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2320301 - Disclosure - Stock-Based Compensation (Tables)",
     "role": "http://www.irobot.com/role/StockBasedCompensationTables",
     "shortName": "Stock-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "irbt:SharebasedcompensationexpensebyclassificationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2321301 - Disclosure - Commitments and Contingencies (Tables)",
     "role": "http://www.irobot.com/role/CommitmentsAndContingenciesTables",
     "shortName": "Commitments and Contingencies (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2325301 - Disclosure - Income Taxes (Tables)",
     "role": "http://www.irobot.com/role/IncomeTaxesTables",
     "shortName": "Income Taxes (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "irbt:ScheduleofrevenuebygeographyTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2326301 - Disclosure - Industry Segment, Geographic Information and Significant Customers Revenue by geography (Tables)",
     "role": "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables",
     "shortName": "Industry Segment, Geographic Information and Significant Customers Revenue by geography (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "irbt:ScheduleofrevenuebygeographyTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2327301 - Disclosure - Quarterly Information (Unaudited) (Tables)",
     "role": "http://www.irobot.com/role/QuarterlyInformationUnauditedTables",
     "shortName": "Quarterly Information (Unaudited) (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:AvailableForSaleSecuritiesTextBlock",
       "irbt:ShortTermInvestmentsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AvailableForSaleSecuritiesAmortizedCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402403 - Disclosure - - Short Term Investments (Details)",
     "role": "http://www.irobot.com/role/ShortTermInvestmentsDetails",
     "shortName": "- Short Term Investments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:AvailableForSaleSecuritiesTextBlock",
       "irbt:ShortTermInvestmentsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AvailableForSaleSecuritiesAmortizedCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:ReceivablesPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402404 - Disclosure - - Accounts Receivable Allowances (Details)",
     "role": "http://www.irobot.com/role/AccountsReceivableAllowancesDetails",
     "shortName": "- Accounts Receivable Allowances (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:ReceivablesPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "irbt:LeaseholdImprovementsTerms",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402405 - Disclosure - - Property and Equipment (Details)",
     "role": "http://www.irobot.com/role/PropertyAndEquipmentDetails",
     "shortName": "- Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD_us-gaap_PropertyPlantAndEquipmentByTypeAxis_us-gaap_LeaseholdsAndLeaseholdImprovementsMember",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "irbt:LeaseholdImprovementsTerms",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:GainLossOnSaleOfEquityInvestments",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402406 - Disclosure - Summary of Significant Accounting Policies Other assets (Details)",
     "role": "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails",
     "shortName": "Summary of Significant Accounting Policies Other assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsValuationAllowance",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402407 - Disclosure - Summary of Significant Accounting Policies Income taxes (Details)",
     "role": "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails",
     "shortName": "Summary of Significant Accounting Policies Income taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1003000 - Statement - Consolidated Statement of Comprehensive Income",
     "role": "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome",
     "shortName": "Consolidated Statement of Comprehensive Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402408 - Disclosure - - Net Income Per Share (Details)",
     "role": "http://www.irobot.com/role/NetIncomePerShareDetails",
     "shortName": "- Net Income Per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:EarningsPerSharePolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentPeriodEndDate",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2402409 - Disclosure - Summary of Significant Accounting Policies - Narrative (Details)",
     "role": "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails",
     "shortName": "Summary of Significant Accounting Policies - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:CashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2403406 - Disclosure - Revenue Recognition Disaggregation of Revenue (Details)",
     "role": "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails",
     "shortName": "Revenue Recognition Disaggregation of Revenue (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD_srt_StatementGeographicalAxis_country_US",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsAndOtherReceivablesNetCurrent",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2403407 - Disclosure - Revenue Recognition Contract Balances (Details)",
     "role": "http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails",
     "shortName": "Revenue Recognition Contract Balances (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "irbt:Refundliabilityproductreturns",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2403408 - Disclosure - Revenue Recognition Significant Judgments (Details)",
     "role": "http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails",
     "shortName": "Revenue Recognition Significant Judgments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "irbt:Refundliabilityproductreturns",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "irbt:ScheduleofLeasesSupplementalCashFlowTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404403 - Disclosure - Leases (Details)",
     "role": "http://www.irobot.com/role/LeasesDetails",
     "shortName": "Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "irbt:ScheduleofLeasesSupplementalCashFlowTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasePayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2404404 - Disclosure - Leases Maturity of Operating Lease Liability (Details)",
     "role": "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails",
     "shortName": "Leases Maturity of Operating Lease Liability (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2405402 - Disclosure - Business Combinations - Robopolis Acquisition (Details)",
     "role": "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
     "shortName": "Business Combinations - Robopolis Acquisition (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:BusinessCombinationDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "D2017Q4ROBODURATION_us-gaap_BusinessAcquisitionAxis_irbt_RobopolisMember",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:CashAcquiredFromAcquisition",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2405403 - Disclosure - Business Combinations - Sales On Demand Corporation Acquisition (Details)",
     "role": "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
     "shortName": "Business Combinations - Sales On Demand Corporation Acquisition (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2018Q4YTD_us-gaap_BusinessAcquisitionAxis_irbt_SalesOnDemandCorporationMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:PaymentsToAcquireBusinessesGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2405404 - Disclosure - Business Combinations - Pro Forma (Details)",
     "role": "http://www.irobot.com/role/BusinessCombinationsProFormaDetails",
     "shortName": "Business Combinations - Pro Forma (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:BusinessAcquisitionProFormaInformationTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2017Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:BusinessAcquisitionsProFormaRevenue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1004000 - Statement - Consolidated Statements of Stockholders' Equity",
     "role": "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
     "shortName": "Consolidated Statements of Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2016Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockSharesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2407402 - Disclosure - Inventory (Details)",
     "role": "http://www.irobot.com/role/InventoryDetails",
     "shortName": "Inventory (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2408402 - Disclosure - Property and Equipment 1 (Details)",
     "role": "http://www.irobot.com/role/PropertyAndEquipment1Details",
     "shortName": "Property and Equipment 1 (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "ix:continuation",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:PropertyPlantAndEquipmentGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:GoodwillAcquiredDuringPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411402 - Disclosure - Goodwill and other intangible assets - Goodwill (Details)",
     "role": "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails",
     "shortName": "Goodwill and other intangible assets - Goodwill (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:GoodwillAcquiredDuringPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411403 - Disclosure - Goodwill and other intangible assets - Intangible Assets (Details)",
     "role": "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails",
     "shortName": "Goodwill and other intangible assets - Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2411404 - Disclosure - Goodwill and other intangible assets - Future Amortization Expense (Details)",
     "role": "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails",
     "shortName": "Goodwill and other intangible assets - Future Amortization Expense (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrualCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2412402 - Disclosure - Accrued Expenses (Details)",
     "role": "http://www.irobot.com/role/AccruedExpensesDetails",
     "shortName": "Accrued Expenses (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrualCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2414401 - Disclosure - Working Capital Facilities (Details)",
     "role": "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails",
     "shortName": "Working Capital Facilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:DebtDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LettersOfCreditOutstandingAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DerivativeNotionalAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2415402 - Disclosure - Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)",
     "role": "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
     "shortName": "Derivative Instruments and Hedging Activities - Fair Value of Derivatives (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4_us-gaap_HedgingDesignationAxis_us-gaap_NondesignatedMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DerivativeNotionalAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2415403 - Disclosure - Derivative Instruments and Hedging Activities - Gain (Loss) on Derivatives (Details)",
     "role": "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
     "shortName": "Derivative Instruments and Hedging Activities - Gain (Loss) on Derivatives (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
       "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_OtherNonoperatingIncomeExpenseMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ConvertibleDebtTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NotesReceivableFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2416403 - Disclosure - Fair Value Measurements (Details)",
     "role": "http://www.irobot.com/role/FairValueMeasurementsDetails",
     "shortName": "Fair Value Measurements (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ConvertibleDebtTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NotesReceivableFairValueDisclosure",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "1005000 - Statement - Consolidated Statements of Cash Flows",
     "role": "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows",
     "shortName": "Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2419401 - Disclosure - Stockholders' Equity (Details)",
     "role": "http://www.irobot.com/role/StockholdersEquityDetails",
     "shortName": "Stockholders' Equity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "irbt:SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "plan",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2420402 - Disclosure - Stock-Based Compensation - Narrative (Details)",
     "role": "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails",
     "shortName": "Stock-Based Compensation - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "irbt:SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans",
      "reportCount": 1,
      "unique": true,
      "unitRef": "plan",
      "xsiNil": "false"
     }
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2420403 - Disclosure - Stock-Based Compensation - Stock Options Activity (Details)",
     "role": "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
     "shortName": "Stock-Based Compensation - Stock Options Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2420404 - Disclosure - Stock-Based Compensation - Stock Options Assumptions (Details)",
     "role": "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails",
     "shortName": "Stock-Based Compensation - Stock Options Assumptions (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "2",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharePrice",
      "reportCount": 1,
      "unitRef": "usdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2420406 - Disclosure - Stock-Based Compensation - RSUs and PSUs (Details)",
     "role": "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
     "shortName": "Stock-Based Compensation - RSUs and PSUs (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockUnitsRSUMember",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:CompensationAndEmployeeBenefitPlansTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "I2018Q2SD",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockCapitalSharesReservedForFutureIssuance",
      "reportCount": 1,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2420407 - Disclosure - Stock-Based Compensation - ESPP (Details)",
     "role": "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
     "shortName": "Stock-Based Compensation - ESPP (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "I2017Q2May",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "irbt:SharebasedcompensationexpensebyclassificationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2420408 - Disclosure - Stock-Based Compensation Stock comp expense classification (Details)",
     "role": "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails",
     "shortName": "Stock-Based Compensation Stock comp expense classification (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "irbt:SharebasedcompensationexpensebyclassificationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD_us-gaap_IncomeStatementLocationAxis_us-gaap_CostOfSalesMember",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeasesRentExpenseNet",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2421402 - Disclosure - Commitments and Contingencies (Details)",
     "role": "http://www.irobot.com/role/CommitmentsAndContingenciesDetails",
     "shortName": "Commitments and Contingencies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:ContractualObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2421403 - Disclosure - Commitments and Contingencies (Details 1)",
     "role": "http://www.irobot.com/role/CommitmentsAndContingenciesDetails1",
     "shortName": "Commitments and Contingencies (Details 1)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2016Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanCostRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2424401 - Disclosure - Employee Benefits (Details)",
     "role": "http://www.irobot.com/role/EmployeeBenefitsDetails",
     "shortName": "Employee Benefits (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanCostRecognized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2101100 - Disclosure - Nature of the Business",
     "role": "http://www.irobot.com/role/NatureOfBusiness",
     "shortName": "Nature of the Business",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NatureOfOperations",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2425402 - Disclosure - Income Taxes - Income (Loss) Before Provision For Income Taxes (Details)",
     "role": "http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails",
     "shortName": "Income Taxes - Income (Loss) Before Provision For Income Taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2425403 - Disclosure - Income Taxes - Components of Income Tax Expense (Details)",
     "role": "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails",
     "shortName": "Income Taxes - Components of Income Tax Expense (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentFederalTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2425404 - Disclosure - Income Taxes - Effective Income Tax Reconciliation (Details)",
     "role": "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails",
     "shortName": "Income Taxes - Effective Income Tax Reconciliation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2425405 - Disclosure - Income Taxes - Net Deferred Tax Assets (Details)",
     "role": "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails",
     "shortName": "Income Taxes - Net Deferred Tax Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2018Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2425406 - Disclosure - Income Taxes - Unrecognized Tax Benefits (Details)",
     "role": "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails",
     "shortName": "Income Taxes - Unrecognized Tax Benefits (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2016Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefits",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2017Q4QTD",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "irbt:TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2425407 - Disclosure - Income Taxes - Narrative (Details)",
     "role": "http://www.irobot.com/role/IncomeTaxesNarrativeDetails",
     "shortName": "Income Taxes - Narrative (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-5",
      "lang": null,
      "name": "us-gaap:OperatingLossCarryforwards",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "span",
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentPeriodEndDate",
      "reportCount": 1,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2426402 - Disclosure - Industry Segment, Geographic Information and Significant Customers (Details Textual)",
     "role": "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
     "shortName": "Industry Segment, Geographic Information and Significant Customers (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD_srt_StatementGeographicalAxis_us-gaap_NonUsMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_SalesRevenueNetMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember",
      "decimals": "3",
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Revenues",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2427402 - Disclosure - Quarterly Information (Unaudited) (Details)",
     "role": "http://www.irobot.com/role/QuarterlyInformationUnauditedDetails",
     "shortName": "Quarterly Information (Unaudited) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4QTD",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FI2019Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "",
     "isDefault": "false",
     "longName": "2429400 - Schedule - Maturity of Operating Lease Liability (Details) (Details)",
     "role": "http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails",
     "shortName": "Maturity of Operating Lease Liability (Details) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "2102100 - Disclosure - Summary of Significant Accounting Policies",
     "role": "http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies",
     "shortName": "Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "irbt-12282019x10k.htm",
      "contextRef": "FD2019Q4YTD",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 60,
   "tag": {
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "UNITED STATES",
        "terseLabel": "UNITED STATES"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2017-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date",
        "terseLabel": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r459"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report",
        "terseLabel": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus",
        "terseLabel": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.",
        "label": "Document Period End Date",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation",
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r458"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "Document Type",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key",
        "terseLabel": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Entity Common Stock, Shares Outstanding",
        "terseLabel": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Current Reporting Status",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-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.",
        "label": "Entity Filer Category",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code",
        "terseLabel": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r461"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float",
        "terseLabel": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r460"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number",
        "terseLabel": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers",
        "terseLabel": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.",
        "label": "Entity Well-known Seasoned Issuer",
        "terseLabel": "Entity Well-known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r456"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r457"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol",
        "terseLabel": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "irbt_AccountingPoliciesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "[Line Items] for Accounting Policies [Table]",
        "label": "Accounting Policies [Line Items]",
        "terseLabel": "Accounting Policies [Line Items]"
       }
      }
     },
     "localname": "AccountingPoliciesLineItems",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_AccountingPoliciesTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accounting Policies [Table]",
        "label": "Accounting Policies [Table]",
        "terseLabel": "Accounting Policies [Table]"
       }
      }
     },
     "localname": "AccountingPoliciesTable",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_AccruedDirectFulfillmentCosts": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accrued direct fulfillment costs.",
        "label": "Accrued Direct Fulfillment Costs",
        "verboseLabel": "Accrued direct fulfillment costs"
       }
      }
     },
     "localname": "AccruedDirectFulfillmentCosts",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_AccruedSalesTax": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accrued Sales Tax",
        "label": "Accrued Sales Tax",
        "terseLabel": "Accrued sales and other indirect taxes payable"
       }
      }
     },
     "localname": "AccruedSalesTax",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adjustments to additional paid in capital directors deferred compensation.",
        "label": "Adjustments to Additional Paid in Capital Directors Deferred Compensation",
        "verboseLabel": "Directors' deferred compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalDirectorsDeferredCompensation",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_AllOtherRegionsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "All Other Regions [Member]",
        "label": "All Other Regions [Member]",
        "terseLabel": "All Other Regions [Member]"
       }
      }
     },
     "localname": "AllOtherRegionsMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_AllowanceForPriceProtectionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Allowance For Price Protection [Member]",
        "label": "Allowance For Price Protection [Member]",
        "terseLabel": "Allowance for price protection"
       }
      }
     },
     "localname": "AllowanceForPriceProtectionMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_AllowanceforothercreditsandincentivesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Allowance for other credits and incentives [Member]",
        "label": "Allowance for other credits and incentives [Member]",
        "terseLabel": "Allowance for other credits and incentives [Member]"
       }
      }
     },
     "localname": "AllowanceforothercreditsandincentivesMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_AllowanceforproductreturnsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Allowance for product returns [Member]",
        "label": "Allowance for product returns [Member]",
        "terseLabel": "Allowance for product returns [Member]",
        "verboseLabel": "Allowance for product returns"
       }
      }
     },
     "localname": "AllowanceforproductreturnsMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_AmazonMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amazon [Member]",
        "label": "Amazon [Member]",
        "terseLabel": "Amazon [Member]"
       }
      }
     },
     "localname": "AmazonMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_AmortizationofIntangibleAssetsNonproduction": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amortization of Intangible Assets, Nonproduction",
        "label": "Amortization of Intangible Assets, Nonproduction",
        "terseLabel": "Amortization of acquired intangible assets"
       }
      }
     },
     "localname": "AmortizationofIntangibleAssetsNonproduction",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Including Goodwill",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Including Goodwill",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accrued Expenses",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accrued Expenses",
        "negatedTerseLabel": "Accrued expenses"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedCurrentLiabilitiesAccruedExpenses",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_CommonStockNumberOfVotesPerShare": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Common Stock, Number Of Votes Per Share",
        "label": "Common Stock, Number Of Votes Per Share",
        "terseLabel": "Common stock, votes per share"
       }
      }
     },
     "localname": "CommonStockNumberOfVotesPerShare",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "irbt_ConsumerRobotRevenueMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Consumer Robot Revenue [Member]",
        "label": "Consumer Robot Revenue [Member]",
        "terseLabel": "Consumer Robot Revenue"
       }
      }
     },
     "localname": "ConsumerRobotRevenueMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_ContractBalancesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Contract Balances [Abstract]",
        "label": "Contract Balances [Abstract]"
       }
      }
     },
     "localname": "ContractBalancesAbstract",
     "nsuri": "http://www.irobot.com/20191228",
     "xbrltype": "stringItemType"
    },
    "irbt_Costofproductrevenue": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Cost of product revenue",
        "label": "Cost of product revenue",
        "terseLabel": "Cost of product revenue"
       }
      }
     },
     "localname": "Costofproductrevenue",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Deferred Tax Assets, Lease Liabilities",
        "label": "Deferred Tax Asset, Tax Deferred Expense, Lease Liabilities",
        "terseLabel": "Operating lease liabilities"
       }
      }
     },
     "localname": "DeferredTaxAssetTaxDeferredExpenseLeaseLiabilities",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_DocumentAndEntityInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "-- None. No documentation exists for this element. --",
        "label": "Document and Entity Information [Abstract]"
       }
      }
     },
     "localname": "DocumentAndEntityInformationAbstract",
     "nsuri": "http://www.irobot.com/20191228",
     "xbrltype": "stringItemType"
    },
    "irbt_EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 8.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, EMEA business restructuring",
        "label": "Effective Income Tax Rate Reconciliation, EMEA business restructuring",
        "terseLabel": "EMEA business restructuring"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationEMEAbusinessrestructuring",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_EffectiveIncomeTaxRateReconciliationExecutiveCompensation": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 9.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Executive Compensation",
        "label": "Effective Income Tax Rate Reconciliation, Executive Compensation",
        "terseLabel": "Executive compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationExecutiveCompensation",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Foreign-derived intangible income deduction",
        "label": "Effective Income Tax Rate Reconciliation, Foreign derived intangible income deduction",
        "terseLabel": "Foreign-derived intangible income deduction"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationForeignderivedintangibleincomededuction",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Miscellaneous Permanent Items, Amount",
        "label": "Effective Income Tax Rate Reconciliation, Miscellaneous Permanent Items, Amount",
        "terseLabel": "Miscellaneous permanent items"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationMiscellaneousPermanentItemsAmount",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Excess Tax Benefits Related To Share-based Compensation, Amount",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Excess Tax Benefits Related To Share-based Compensation, Amount",
        "negatedTerseLabel": "Excess tax benefits relating to stock-based compensation"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationNondeductibleExpenseExcessTaxBenefitsRelatedToSharebasedCompensationAmount",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 10.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effective Income Tax Rate Reconciliation, Tax Impact of Foreign Earnings",
        "label": "Effective Income Tax Rate Reconciliation, Tax Impact of Foreign Earnings",
        "terseLabel": "Tax impact of foreign earnings"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxImpactofForeignEarnings",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_EvolutionRoboticsIncErMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Evolution Robotics, Inc. (ER) [Member]",
        "label": "Evolution Robotics, Inc. (ER) [Member]",
        "terseLabel": "Evolution Robotics, Inc. (ER)"
       }
      }
     },
     "localname": "EvolutionRoboticsIncErMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_FifteenCustomersMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fifteen Customers [Member]",
        "label": "Fifteen Customers [Member]",
        "terseLabel": "15 Customers"
       }
      }
     },
     "localname": "FifteenCustomersMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_Finitelivedintangibleassetsfutureamortizationtotal": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Finite-lived intangible assets, future amortization total",
        "label": "Finite-lived intangible assets, future amortization total",
        "terseLabel": "Finite-lived intangible assets, future amortization total"
       }
      }
     },
     "localname": "Finitelivedintangibleassetsfutureamortizationtotal",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_IncometaxesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Income taxes [Abstract]",
        "label": "Income taxes [Abstract]"
       }
      }
     },
     "localname": "IncometaxesAbstract",
     "nsuri": "http://www.irobot.com/20191228",
     "xbrltype": "stringItemType"
    },
    "irbt_InterestRateAboveLIBORUnderConditionOne": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Interest rate above LIBOR under condition one.",
        "label": "Interest Rate Above LIBOR Under Condition One",
        "verboseLabel": "Interest rate above the LIBOR Daily Floating Rate or the Prime Rate of Lender under condition one"
       }
      }
     },
     "localname": "InterestRateAboveLIBORUnderConditionOne",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "irbt_InterestRateAbovetheEurodollarRateUnderConditionTwo": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Interest rate above the Eurodollar rate Under Condition Two.",
        "label": "Interest Rate Above the Eurodollar Rate Under Condition Two",
        "verboseLabel": "Interest rate above the LIBOR rate plus under condition two"
       }
      }
     },
     "localname": "InterestRateAbovetheEurodollarRateUnderConditionTwo",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "irbt_InterestRateAbovetheFederalFundRateUnderConditionTwo": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Interest Rate Above the Federal Funds Rate Under Condition Two",
        "label": "Interest Rate Above the Federal Fund Rate Under Condition Two",
        "terseLabel": "Interest Rate Above the Federal Fund Rate Under Condition Two"
       }
      }
     },
     "localname": "InterestRateAbovetheFederalFundRateUnderConditionTwo",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "irbt_LeaseholdImprovementsTerms": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Leasehold improvements terms.",
        "label": "Leasehold Improvements Terms",
        "terseLabel": "Capital Leases and Leasehold Improvements Terms"
       }
      }
     },
     "localname": "LeaseholdImprovementsTerms",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_Letterofcreditfacilitymaximumborrowing": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Letter of credit facility, maximum borrowing",
        "label": "Letter of credit facility, maximum borrowing",
        "terseLabel": "Letter of credit facility, maximum borrowing"
       }
      }
     },
     "localname": "Letterofcreditfacilitymaximumborrowing",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_Lineofcreditmaximumamount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Line of credit, maximum amount",
        "label": "Line of credit, maximum amount",
        "terseLabel": "Line of credit, maximum amount"
       }
      }
     },
     "localname": "Lineofcreditmaximumamount",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_OperatingLeaseCostAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Operating Lease Cost [Abstract]",
        "label": "Operating Lease Cost [Abstract]"
       }
      }
     },
     "localname": "OperatingLeaseCostAbstract",
     "nsuri": "http://www.irobot.com/20191228",
     "xbrltype": "stringItemType"
    },
    "irbt_RangeOfExercisePricesEightMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices eight.",
        "label": "Range of Exercise Prices Eight [Member]",
        "verboseLabel": "43.35 - 43.35"
       }
      }
     },
     "localname": "RangeOfExercisePricesEightMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesFiveMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices five.",
        "label": "Range of Exercise Prices Five [Member]",
        "verboseLabel": "35.43 - 37.08"
       }
      }
     },
     "localname": "RangeOfExercisePricesFiveMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesFourMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices four.",
        "label": "Range of Exercise Prices Four [Member]",
        "verboseLabel": "33.29 - 34.30"
       }
      }
     },
     "localname": "RangeOfExercisePricesFourMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesNineMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices nine.",
        "label": "Range of Exercise Prices Nine [Member]",
        "verboseLabel": "57.33 - 57.33"
       }
      }
     },
     "localname": "RangeOfExercisePricesNineMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesOneMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices one.",
        "label": "Range of Exercise Prices One [Member]",
        "verboseLabel": "$ 22.86 - $22.86"
       }
      }
     },
     "localname": "RangeOfExercisePricesOneMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesSevenMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices seven.",
        "label": "Range of Exercise Prices Seven [Member]",
        "verboseLabel": "39.09 - 39.09"
       }
      }
     },
     "localname": "RangeOfExercisePricesSevenMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesSixMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices six.",
        "label": "Range of Exercise Prices Six [Member]",
        "verboseLabel": "37.62 - 37.62"
       }
      }
     },
     "localname": "RangeOfExercisePricesSixMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesTenMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices ten.",
        "label": "Range of Exercise Prices Ten [Member]",
        "verboseLabel": "58.55 - 58.55"
       }
      }
     },
     "localname": "RangeOfExercisePricesTenMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesThreeMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices three.",
        "label": "Range of Exercise Prices Three [Member]",
        "terseLabel": "33.14 - 33.14"
       }
      }
     },
     "localname": "RangeOfExercisePricesThreeMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RangeOfExercisePricesTwoMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Range of exercise prices two.",
        "label": "Range of Exercise Prices Two [Member]",
        "verboseLabel": "29.60 - 32.38"
       }
      }
     },
     "localname": "RangeOfExercisePricesTwoMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_Refundliabilityothercreditsandincentives": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Refund liability, other credits and incentives",
        "label": "Refund liability, other credits and incentives",
        "terseLabel": "Refund liability, other credits and incentives"
       }
      }
     },
     "localname": "Refundliabilityothercreditsandincentives",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_Refundliabilityproductreturns": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Refund liability, product returns",
        "label": "Refund liability, product returns",
        "terseLabel": "Refund liability, product returns"
       }
      }
     },
     "localname": "Refundliabilityproductreturns",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_RevenuefromContractwithCustomerInitialapplicationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revenue from Contract with Customer Initial application [Abstract]",
        "label": "Revenue from Contract with Customer Initial application [Abstract]"
       }
      }
     },
     "localname": "RevenuefromContractwithCustomerInitialapplicationAbstract",
     "nsuri": "http://www.irobot.com/20191228",
     "xbrltype": "stringItemType"
    },
    "irbt_RevolvingLineOfCreditTextualAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revolving Line of Credit.",
        "label": "Revolving Line of Credit (Textual) [Abstract]",
        "verboseLabel": "Revolving Line of Credit (Textual) [Abstract]"
       }
      }
     },
     "localname": "RevolvingLineOfCreditTextualAbstract",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_RobopolisMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Robopolis [Member]",
        "label": "Robopolis [Member]",
        "terseLabel": "Robopolis"
       }
      }
     },
     "localname": "RobopolisMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_RobopolisSASMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Robopolis SAS [Member]",
        "label": "Robopolis SAS [Member]",
        "terseLabel": "Robopolis SAS"
       }
      }
     },
     "localname": "RobopolisSASMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_SalesOnDemandCorporationMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sales On Demand Corporation [Member]",
        "label": "Sales On Demand Corporation [Member]",
        "terseLabel": "Sales On Demand Corporation"
       }
      }
     },
     "localname": "SalesOnDemandCorporationMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_SalesOnDemandCorporationSODCMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Sales On Demand Corporation (SODC) [Member]",
        "label": "Sales On Demand Corporation (SODC) [Member]",
        "terseLabel": "Sales On Demand Corporation (SODC)"
       }
      }
     },
     "localname": "SalesOnDemandCorporationSODCMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_ScheduleOfAccountsReceivableAllowancesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule Of Accounts Receivable Allowances [Table Text Block]",
        "label": "Schedule Of Accounts Receivable Allowances [Table Text Block]",
        "verboseLabel": "Activity related to accounts receivable allowances"
       }
      }
     },
     "localname": "ScheduleOfAccountsReceivableAllowancesTableTextBlock",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "irbt_ScheduleofLeasesSupplementalCashFlowTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of Leases, Supplemental Cash Flow [Table Text Block]",
        "label": "Schedule of Leases, Supplemental Cash Flow [Table Text Block]",
        "terseLabel": "Schedule of Leases, Supplemental Cash Flow [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleofLeasesSupplementalCashFlowTableTextBlock",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "irbt_ScheduleofrevenuebygeographyLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "[Line Items] for Schedule of revenue by geography [Table]",
        "label": "Schedule of revenue by geography [Line Items]",
        "terseLabel": "Schedule of revenue by geography [Line Items]"
       }
      }
     },
     "localname": "ScheduleofrevenuebygeographyLineItems",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_ScheduleofrevenuebygeographyTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of revenue by geography [Table]",
        "label": "Schedule of revenue by geography [Table]",
        "terseLabel": "Schedule of revenue by geography [Table]"
       }
      }
     },
     "localname": "ScheduleofrevenuebygeographyTable",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_ScheduleofrevenuebygeographyTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "[Table Text Block] for Schedule of revenue by geography [Table]",
        "label": "Schedule of revenue by geography [Table Text Block]",
        "terseLabel": "Schedule of revenue by geography [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleofrevenuebygeographyTableTextBlock",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based Compensation Arrangement By Share-based Payment Award, Award Conversion Ratio",
        "label": "Share-based Compensation Arrangement By Share-based Payment Award, Award Conversion Ratio",
        "terseLabel": "Share conversion ratio"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardConversionRatio",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based Compensation Arrangement By Share-based Payment Award, Number Of Plans",
        "label": "Share-based Compensation Arrangement By Share-based Payment Award, Number Of Plans",
        "terseLabel": "Number of plans"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardNumberOfPlans",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "irbt_SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based Compensation Arrangement By Share-based Payment Award, Offering Period",
        "label": "Share-based Compensation Arrangement By Share-based Payment Award, Offering Period",
        "terseLabel": "Share-based Compensation Arrangement By Share-based Payment Award, Offering Period"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOfferingPeriod",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "irbt_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Maximum Amount",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Maximum Amount",
        "terseLabel": "Maximum dollar amount"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumAmount",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_SharebasedcompensationexpensebyclassificationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "[Line Items] for Share based compensation expense by classification [Table]",
        "label": "Share based compensation expense by classification [Line Items]",
        "terseLabel": "Share based compensation expense by classification [Line Items]"
       }
      }
     },
     "localname": "SharebasedcompensationexpensebyclassificationLineItems",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_SharebasedcompensationexpensebyclassificationTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share based compensation expense by classification [Table]",
        "label": "Share based compensation expense by classification [Table]",
        "terseLabel": "Share based compensation expense by classification [Table]"
       }
      }
     },
     "localname": "SharebasedcompensationexpensebyclassificationTable",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "stringItemType"
    },
    "irbt_SharebasedcompensationexpensebyclassificationTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "[Table Text Block] for Share based compensation expense by classification [Table]",
        "label": "Share based compensation expense by classification [Table Text Block]",
        "terseLabel": "Share based compensation expense by classification [Table Text Block]"
       }
      }
     },
     "localname": "SharebasedcompensationexpensebyclassificationTableTextBlock",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "irbt_ShortTermInvestmentsPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Short Term Investments [Policy Text Block]",
        "label": "Short Term Investments [Policy Text Block]",
        "terseLabel": "Short Term Investments"
       }
      }
     },
     "localname": "ShortTermInvestmentsPolicyTextBlock",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "irbt_StockRepurchaseProgramCommencementDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Commencement date for the purchase of an entity's own shares under a stock repurchase plan.",
        "label": "Stock Repurchase Program Commencement Date",
        "terseLabel": "Program commencement date"
       }
      }
     },
     "localname": "StockRepurchaseProgramCommencementDate",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "dateItemType"
    },
    "irbt_StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stock withheld to Cover tax withholding requirements Upon Vesting to restricted Stock Units.",
        "label": "Stock Withheld to Cover Tax Withholding Requirements Upon Vesting to Restricted Stock Units Amount",
        "negatedLabel": "Stock withheld to cover tax withholdings requirements upon restricted stock vesting"
       }
      }
     },
     "localname": "StockWithheldToCoverTaxWithholdingRequirementsUponVestingToRestrictedStockUnitsAmount",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tax Cuts and Jobs Act of 2017, Provisional Income Tax Expense (Benefit)",
        "label": "Tax Cuts and Jobs Act of 2017, Provisional Income Tax Expense (Benefit)",
        "terseLabel": "Tax Cuts and Jobs Act of 2017, income tax expense (benefit)"
       }
      }
     },
     "localname": "TaxCutsandJobsActof2017ProvisionalIncomeTaxExpenseBenefit",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tax Cuts and Jobs Act of 2017, Transition Tax for Accumulated Foreign Earnings, Provisional Income Tax Expense (Benefit)",
        "label": "Tax Cuts and Jobs Act of 2017, Transition Tax for Accumulated Foreign Earnings, Provisional Income Tax Expense (Benefit)",
        "terseLabel": "Tax Cuts and Jobs Act of 2017, income tax expense (benefit), transition tax fior accumulated foreign earnings"
       }
      }
     },
     "localname": "TaxCutsandJobsActof2017TransitionTaxforAccumulatedForeignEarningsProvisionalIncomeTaxExpenseBenefit",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "irbt_ThreeCustomersMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Three Customers [Member]",
        "label": "Three Customers [Member]",
        "terseLabel": "Three Customers"
       }
      }
     },
     "localname": "ThreeCustomersMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_TwoCustomersMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Two Customers [Member]",
        "label": "Two Customers [Member]",
        "terseLabel": "Two Customers [Member]"
       }
      }
     },
     "localname": "TwoCustomersMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Two Customers Secured Balance With Guaranteed Letters Of Credit [Member]",
        "label": "Two Customers Secured Balance With Guaranteed Letters Of Credit [Member]",
        "terseLabel": "Two Customers Secured Balance With Guaranteed Letters Of Credit"
       }
      }
     },
     "localname": "TwoCustomersSecuredBalanceWithGuaranteedLettersOfCreditMember",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "irbt_WarrantyTerm": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Warranty, Term",
        "label": "Warranty, Term",
        "terseLabel": "Standard Product Warranty Description"
       }
      }
     },
     "localname": "WarrantyTerm",
     "nsuri": "http://www.irobot.com/20191228",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r151",
      "r231",
      "r235",
      "r447"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Customer [Axis]",
        "terseLabel": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails",
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipmentDetails",
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Customer [Domain]",
        "terseLabel": "Customer [Domain]",
        "verboseLabel": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails",
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails",
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RestatementAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Restatement [Axis]",
        "terseLabel": "Restatement [Axis]"
       }
      }
     },
     "localname": "RestatementAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RestatementDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Restatement [Domain]",
        "terseLabel": "Restatement [Domain]"
       }
      }
     },
     "localname": "RestatementDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Geographical [Domain]",
        "terseLabel": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables",
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r150",
      "r231",
      "r234",
      "r446",
      "r449",
      "r451"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "Geographical [Axis]",
        "terseLabel": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersRevenueByGeographyTables",
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ValuationAndQualifyingAccountsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "SEC Schedule, 12-09, Valuation and Qualifying Accounts [Abstract]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsAbstract",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "srt_ValuationAndQualifyingAccountsDisclosureLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]",
        "terseLabel": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Line Items]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsDisclosureLineItems",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ValuationAndQualifyingAccountsDisclosureTable": {
     "auth_ref": [
      "r114"
     ],
     "lang": {
      "en-US": {
       "role": {
        "label": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]",
        "terseLabel": "SEC Schedule, 12-09, Valuation and Qualifying Accounts Disclosure [Table]"
       }
      }
     },
     "localname": "ValuationAndQualifyingAccountsDisclosureTable",
     "nsuri": "http://fasb.org/srt/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "localname": "AccountingPoliciesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsAndOtherReceivablesNetCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after allowance, receivable from customers, clients, or other third-parties, and receivables classified as other due within one year or the normal operating cycle, if longer.",
        "label": "Accounts and Other Receivables, Net, Current",
        "terseLabel": "Accounts receivable, net"
       }
      }
     },
     "localname": "AccountsAndOtherReceivablesNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": {
     "auth_ref": [
      "r41"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.",
        "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]",
        "verboseLabel": "Accrued Expenses"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpenses"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r40"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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).",
        "label": "Accounts Payable, Current",
        "verboseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Accounts Payable, Current [Abstract]",
        "verboseLabel": "Components of accrued expenses"
       }
      }
     },
     "localname": "AccountsPayableCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]",
        "terseLabel": "Accounts Receivable"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccruedBonusesCurrent": {
     "auth_ref": [
      "r5",
      "r6",
      "r44"
     ],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for incentive compensation awarded to employees and directors or earned by them based on the terms of one or more relevant arrangements. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Accrued Bonuses, Current",
        "terseLabel": "Accrued bonus"
       }
      }
     },
     "localname": "AccruedBonusesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "auth_ref": [
      "r15",
      "r425",
      "r438"
     ],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Accrued Income Taxes, Current",
        "terseLabel": "Accrued federal and state income taxes"
       }
      }
     },
     "localname": "AccruedIncomeTaxesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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).",
        "label": "Accrued Liabilities, Current",
        "totalLabel": "Accrued expenses, total",
        "verboseLabel": "Accrued expenses"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails",
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Accrued Liabilities, Current [Abstract]"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccruedLiabilitiesMember": {
     "auth_ref": [
      "r44"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This item represents 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.",
        "label": "Accrued Liabilities [Member]",
        "terseLabel": "Accrued expenses"
       }
      }
     },
     "localname": "AccruedLiabilitiesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r38",
      "r207"
     ],
     "calculation": {
      "http://www.irobot.com/role/PropertyAndEquipment1Details": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "terseLabel": "Less: accumulated depreciation"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r59",
      "r60",
      "r61"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax",
        "verboseLabel": "Accumulated other comprehensive income (loss)"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r58",
      "r61",
      "r64",
      "r354"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.",
        "label": "AOCI Attributable to Parent [Member]",
        "verboseLabel": "Accumulated Other Comprehensive Income (Loss)"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "auth_ref": [
      "r193"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life",
        "terseLabel": "Intangible assets, useful life"
       }
      }
     },
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r23"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Additional Paid in Capital, Common Stock",
        "verboseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.",
        "label": "Additional Paid-in Capital [Member]",
        "verboseLabel": "Additional Paid-in Capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentForAmortization": {
     "auth_ref": [
      "r97",
      "r198"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate amount of recurring noncash expense charged against earnings in the period to allocate the cost of assets over their estimated remaining economic lives.",
        "label": "Amortization",
        "terseLabel": "Amortization expense"
       }
      }
     },
     "localname": "AdjustmentForAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": {
     "auth_ref": [
      "r116"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by new accounting pronouncement.",
        "label": "Adjustments for New Accounting Pronouncements [Axis]",
        "terseLabel": "Adjustments for New Accounting Pronouncements [Axis]"
       }
      }
     },
     "localname": "AdjustmentsForNewAccountingPronouncementsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r245",
      "r247",
      "r282",
      "r283"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "APIC, Share-based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation": {
     "auth_ref": [
      "r224",
      "r225",
      "r285"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in additional paid in capital (APIC) resulting from a tax benefit associated with share-based compensation plan other than an employee stock ownership plan (ESOP). Includes, but is not limited to, excess tax benefit.",
        "label": "Adjustments to Additional Paid in Capital, Income Tax Benefit from Share-based Compensation",
        "verboseLabel": "Tax benefit of excess stock-based compensation deduction"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]",
        "verboseLabel": "Adjustments to reconcile net income to net cash provided by operating activities, net of the effects of acquisitions:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AdvertisingCostsPolicyTextBlock": {
     "auth_ref": [
      "r287"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for advertising cost.",
        "label": "Advertising Cost [Policy Text Block]",
        "verboseLabel": "Advertising Expense"
       }
      }
     },
     "localname": "AdvertisingCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AdvertisingExpense": {
     "auth_ref": [
      "r288"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line.",
        "label": "Advertising Expense",
        "terseLabel": "Advertising Expense"
       }
      }
     },
     "localname": "AdvertisingExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r247",
      "r276",
      "r281"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Share-based Payment Arrangement, Expense",
        "terseLabel": "Share-based Payment Arrangement, Expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables": {
     "auth_ref": [
      "r154"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The valuation allowance as of the balance sheet date to reduce the gross amount of receivables to estimated net realizable value, which would be presented in parentheses on the face of the balance sheet.",
        "label": "Allowance for Doubtful Accounts, Premiums and Other Receivables",
        "terseLabel": "Allowance for Doubtful Accounts, Premiums and Other Receivables"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsPremiumsAndOtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r97",
      "r190",
      "r198"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Amortization of Intangible Assets",
        "verboseLabel": "Amortization of intangible assets"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r124"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "terseLabel": "Antidilutive securities excluded from computation of earnings per share (in shares)"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r148",
      "r424",
      "r437"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Assets [Abstract]",
        "verboseLabel": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r3",
      "r4",
      "r54"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Assets, Current",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "verboseLabel": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsFairValueDisclosure": {
     "auth_ref": [
      "r384"
     ],
     "calculation": {
      "http://www.irobot.com/role/FairValueMeasurementsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "Assets, Fair Value Disclosure",
        "totalLabel": "Total assets measured at fair value"
       }
      }
     },
     "localname": "AssetsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsFairValueDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Assets, Fair Value Disclosure [Abstract]",
        "terseLabel": "Assets:"
       }
      }
     },
     "localname": "AssetsFairValueDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AvailableForSaleSecurities": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/FairValueMeasurementsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of investment in debt and equity securities categorized neither as held-to-maturity nor trading.",
        "label": "Available-for-sale Securities",
        "terseLabel": "Corporate and government bonds, $17,016 at cost (3)"
       }
      }
     },
     "localname": "AvailableForSaleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AvailableForSaleSecuritiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Debt Securities, Available-for-sale [Abstract]",
        "verboseLabel": "Components of available for sale securities"
       }
      }
     },
     "localname": "AvailableForSaleSecuritiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AvailableForSaleSecuritiesAmortizedCost": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "This item represents the cost of debt and equity 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.",
        "label": "Available-for-sale Securities, Amortized Cost Basis",
        "verboseLabel": "Total short term investments"
       }
      }
     },
     "localname": "AvailableForSaleSecuritiesAmortizedCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AvailableForSaleSecuritiesCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of investment in debt and equity securities categorized neither as trading securities nor held-to-maturity securities and intended be sold or mature one year or operating cycle, if longer.",
        "label": "Available-for-sale Securities, Current",
        "terseLabel": "Total short term investments, Fair Market Value",
        "verboseLabel": "Short term investments"
       }
      }
     },
     "localname": "AvailableForSaleSecuritiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AvailableForSaleSecuritiesTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of available-for-sale securities which includes, but is not limited to, changes in the cost basis and fair value, fair value and gross unrealized gain (loss), fair values by type of security, contractual maturity and classification, amortized cost basis, contracts to acquire securities to be accounted for as available-for-sale, debt maturities, transfers to trading, change in net unrealized holding gain (loss) net of tax, continuous unrealized loss position fair value, aggregate losses qualitative disclosures, other than temporary impairment (OTTI) losses or other disclosures related to available for sale securities.",
        "label": "Available-for-sale Securities [Table Text Block]",
        "verboseLabel": "Components of available for sale securities"
       }
      }
     },
     "localname": "AvailableForSaleSecuritiesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r248",
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by location on balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Axis]",
        "terseLabel": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r365",
      "r368"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]",
        "terseLabel": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).",
        "label": "Basis of Accounting, Policy [Policy Text Block]",
        "terseLabel": "Basis of Presentation"
       }
      }
     },
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BondsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Debt security, in which the authorized issuer owes the holder a debt and is obliged to repay the principal and interest (the coupon).",
        "label": "Bonds [Member]",
        "terseLabel": "Corporate and government bonds"
       }
      }
     },
     "localname": "BondsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.",
        "label": "Business Acquisition, Acquiree [Domain]",
        "terseLabel": "Business Acquisition, Acquiree [Domain]"
       }
      }
     },
     "localname": "BusinessAcquisitionAcquireeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "auth_ref": [
      "r333",
      "r334"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by business combination or series of individually immaterial business combinations.",
        "label": "Business Acquisition [Axis]",
        "terseLabel": "Business Acquisition [Axis]"
       }
      }
     },
     "localname": "BusinessAcquisitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Business Acquisition [Line Items]",
        "terseLabel": "Business Acquisition [Line Items]"
       }
      }
     },
     "localname": "BusinessAcquisitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": {
     "auth_ref": [
      "r331",
      "r332"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Basic",
        "terseLabel": "Basic income per share (in dollars per share)"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": {
     "auth_ref": [
      "r331",
      "r332"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Earnings Per Share, Diluted",
        "terseLabel": "Diluted income per share (in dollars per share)"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": {
     "auth_ref": [
      "r331",
      "r332"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.",
        "label": "Business Acquisition, Pro Forma Information [Table Text Block]",
        "terseLabel": "Schedule of pro forma results"
       }
      }
     },
     "localname": "BusinessAcquisitionProFormaInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": {
     "auth_ref": [
      "r331",
      "r332"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period.",
        "label": "Business Acquisition, Pro Forma Net Income (Loss)",
        "terseLabel": "Net income"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaNetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessAcquisitionsProFormaRevenue": {
     "auth_ref": [
      "r331",
      "r332"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.",
        "label": "Business Acquisition, Pro Forma Revenue",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "BusinessAcquisitionsProFormaRevenue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationBargainPurchaseGainRecognizedAmount": {
     "auth_ref": [
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r348"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "In a business combination in which the amount of net identifiable assets acquired and liabilities assumed exceeds the aggregate consideration transferred or to be transferred (as defined), this element represents the amount of gain recognized by the entity.",
        "label": "Business Combination, Bargain Purchase, Gain Recognized, Amount",
        "negatedTerseLabel": "Gain on business acquisition",
        "terseLabel": "Gain on business acquisition"
       }
      }
     },
     "localname": "BusinessCombinationBargainPurchaseGainRecognizedAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "auth_ref": [
      "r349"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).",
        "label": "Business Combination Disclosure [Text Block]",
        "terseLabel": "Business Combinations"
       }
      }
     },
     "localname": "BusinessCombinationDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 1.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 1.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. 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.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 8.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 2.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 2.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables",
        "terseLabel": "Accounts receivable, net (1)"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities",
        "negatedTerseLabel": "Accrued expenses and other current liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable",
        "negatedTerseLabel": "Accounts payable"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets": {
     "auth_ref": [
      "r296",
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 5.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax asset attributable to deductible temporary differences and carryforwards acquired at the acquisition date.",
        "label": "Business Combination Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Assets",
        "terseLabel": "Deferred tax assets, net"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": {
     "auth_ref": [
      "r296",
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities",
        "negatedTerseLabel": "Deferred tax liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": {
     "auth_ref": [
      "r335",
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 5.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 7.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles",
        "terseLabel": "Intangible assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": {
     "auth_ref": [
      "r335",
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 3.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 3.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of inventory recognized as of the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory",
        "terseLabel": "Inventory"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
       "weight": -1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities",
        "negatedTotalLabel": "Total liabilities assumed",
        "totalLabel": "Total liabilities assumed"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [Abstract]",
        "terseLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Other",
        "negatedTerseLabel": "Other liabilities"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 6.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 4.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": {
     "auth_ref": [
      "r336"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.",
        "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net",
        "terseLabel": "Net assets acquired",
        "totalLabel": "Net assets acquired"
       }
      }
     },
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_BusinessCombinationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Business Combinations [Abstract]"
       }
      }
     },
     "localname": "BusinessCombinationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "auth_ref": [
      "r105",
      "r329"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.",
        "label": "Business Combinations Policy [Policy Text Block]",
        "terseLabel": "Business Combinations"
       }
      }
     },
     "localname": "BusinessCombinationsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareAmortization1": {
     "auth_ref": [
      "r453",
      "r455"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for amortization of capitalized computer software costs.",
        "label": "Capitalized Computer Software, Amortization",
        "terseLabel": "Capitalized Computer Software, Amortization"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareAmortization1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareGross": {
     "auth_ref": [
      "r454"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated amortization of capitalized costs for computer software, including but not limited to, acquired and internally developed computer software.",
        "label": "Capitalized Computer Software, Gross",
        "terseLabel": "Capitalized computer software"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalizedComputerSoftwareNet": {
     "auth_ref": [
      "r452"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The carrying amount of capitalized computer software costs net of accumulated amortization as of the balance sheet date.",
        "label": "Capitalized Computer Software, Net",
        "terseLabel": "Capitalized Computer Software, Net"
       }
      }
     },
     "localname": "CapitalizedComputerSoftwareNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAcquiredFromAcquisition": {
     "auth_ref": [
      "r85"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow associated with the acquisition of business during the period (for example, cash that was held by the acquired business).",
        "label": "Cash Acquired from Acquisition",
        "terseLabel": "Cash acquired from acquisition"
       }
      }
     },
     "localname": "CashAcquiredFromAcquisition",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Cash and Cash Equivalents [Abstract]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r1",
      "r34",
      "r99"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "periodEndLabel": "Cash and cash equivalents, at end of period",
        "periodStartLabel": "Cash and cash equivalents, at beginning of period",
        "verboseLabel": "Cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAxis": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of cash and cash equivalent balance.",
        "label": "Cash and Cash Equivalents [Axis]",
        "terseLabel": "Cash and Cash Equivalents [Axis]"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CashAndCashEquivalentsFairValueDisclosure": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/FairValueMeasurementsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fair value portion 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.",
        "label": "Cash and Cash Equivalents, Fair Value Disclosure",
        "terseLabel": "Money market funds"
       }
      }
     },
     "localname": "CashAndCashEquivalentsFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Cash and Cash Equivalents, Period Increase (Decrease)",
        "totalLabel": "Net increase (decrease) in cash and cash equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPeriodIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r12",
      "r100",
      "r105"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents, Policy [Policy Text Block]",
        "verboseLabel": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r34"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of 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.",
        "label": "Cash Equivalents, at Carrying Value",
        "terseLabel": "Cash equivalents"
       }
      }
     },
     "localname": "CashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashFlowHedgingMember": {
     "auth_ref": [
      "r361"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Hedge of the exposure to variability in the cash flows of a recognized asset or liability, or of a forecasted transaction, that is attributable to a particular risk.",
        "label": "Cash Flow Hedging [Member]",
        "terseLabel": "Cash flow hedge"
       }
      }
     },
     "localname": "CashFlowHedgingMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ClassOfStockDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock.",
        "label": "Class of Stock [Domain]",
        "terseLabel": "Class of Stock [Domain]"
       }
      }
     },
     "localname": "ClassOfStockDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r47",
      "r213",
      "r429",
      "r442"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and Contingencies",
        "verboseLabel": "Commitments and contingencies (Note 15)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r212",
      "r214"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "verboseLabel": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "auth_ref": [
      "r48"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate number of common shares reserved for future issuance.",
        "label": "Common Stock, Capital Shares Reserved for Future Issuance",
        "terseLabel": "Capital shares reserved for future issuance"
       }
      }
     },
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "verboseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r22"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "verboseLabel": "Common stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r22"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized",
        "verboseLabel": "Common stock, shares authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r22"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Common Stock, Shares, Issued",
        "periodEndLabel": "Ending balance, shares",
        "periodStartLabel": "Beginning balance, shares",
        "verboseLabel": "Common stock, shares issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r22",
      "r224"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "terseLabel": "Common Stock, Shares, Outstanding",
        "verboseLabel": "Common stock, shares outstanding"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.irobot.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r22"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Common Stock, Value, Issued",
        "verboseLabel": "Common stock, $0.01 par value; 100,000 shares authorized; 28,352 and 27,788 shares issued and outstanding, respectively"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndEmployeeBenefitPlansTextBlock": {
     "auth_ref": [
      "r238",
      "r239",
      "r244",
      "r286"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for an entity's employee compensation and benefit plans, including, but not limited to, postemployment and postretirement benefit plans, defined benefit pension plans, defined contribution plans, non-qualified and supplemental benefit plans, deferred compensation, share-based compensation, life insurance, severance, health care, unemployment and other benefit plans.",
        "label": "Compensation and Employee Benefit Plans [Text Block]",
        "verboseLabel": "Stock-Based Compensation"
       }
      }
     },
     "localname": "CompensationAndEmployeeBenefitPlansTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Retirement Benefits [Abstract]"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r67",
      "r69",
      "r70"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "totalLabel": "Total comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComputerEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems.",
        "label": "Computer Equipment [Member]",
        "terseLabel": "Computer and equipment"
       }
      }
     },
     "localname": "ComputerEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r138",
      "r139",
      "r396",
      "r397"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]",
        "terseLabel": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r138",
      "r139",
      "r396",
      "r397",
      "r448"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r138",
      "r139",
      "r396",
      "r397",
      "r448"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]",
        "terseLabel": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "auth_ref": [
      "r143"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.",
        "label": "Concentration Risk Disclosure [Text Block]",
        "verboseLabel": "Concentration of Credit Risk and Significant Customers"
       }
      }
     },
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r138",
      "r139",
      "r396",
      "r397"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "Concentration Risk, Percentage",
        "terseLabel": "Concentration risk percentage"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r138",
      "r139",
      "r396",
      "r397"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.",
        "label": "Concentration Risk Type [Domain]",
        "terseLabel": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "auth_ref": [
      "r229"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of contract balances and changes in contract balances.",
        "label": "Contract with Customer, Asset and Liability [Table Text Block]",
        "terseLabel": "Contract with Customer, Asset and Liability [Table Text Block]"
       }
      }
     },
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionContractBalancesTables",
      "http://www.irobot.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r227",
      "r228",
      "r232"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "Contract with Customer, Liability",
        "terseLabel": "Contract with Customer, Liability"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "auth_ref": [
      "r233"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.",
        "label": "Contract with Customer, Liability, Revenue Recognized",
        "terseLabel": "Contract with Customer, Liability, Revenue Recognized"
       }
      }
     },
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionContractBalancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractualObligation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of contractual obligation, including but not limited to, long-term debt, capital lease obligations, operating lease obligations, purchase obligations, and other commitments.",
        "label": "Contractual Obligation",
        "terseLabel": "Contractual Obligation"
       }
      }
     },
     "localname": "ContractualObligation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConvertibleDebtMember": {
     "auth_ref": [
      "r222"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Borrowing which can be exchanged for a specified number of another security at the option of the issuer or the holder, for example, but not limited to, the entity's common stock.",
        "label": "Convertible Debt [Member]",
        "terseLabel": "Convertible note"
       }
      }
     },
     "localname": "ConvertibleDebtMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConvertibleDebtTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of borrowings which can be exchanged for a specified number of another security at the option of the issuer or the holder. Disclosures include, but are not limited to, principal amount, amortized premium or discount, and amount of liability and equity components.",
        "label": "Convertible Debt [Table Text Block]",
        "terseLabel": "Convertible Debt [Table Text Block]"
       }
      }
     },
     "localname": "ConvertibleDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsConvertibleNoteTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r80"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Cost of Goods and Services Sold",
        "terseLabel": "Cost of Goods and Services Sold",
        "totalLabel": "Total cost of revenue"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSoldAmortization": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expense for allocation of cost of intangible asset over its useful life directly used in production of good and rendering of service.",
        "label": "Cost, Amortization",
        "terseLabel": "Amortization of acquired intangible assets"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSoldAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfSalesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing cost of sales.",
        "label": "Cost of Sales [Member]",
        "terseLabel": "Cost of revenue",
        "verboseLabel": "Cost of revenue"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Cumulative Effect of New Accounting Principle in Period of Adoption",
        "verboseLabel": "Cumulative effect of a change in accounting principle related to adoption of ASC 606"
       }
      }
     },
     "localname": "CumulativeEffectOfNewAccountingPrincipleInPeriodOfAdoption",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentFederalTaxExpenseBenefit": {
     "auth_ref": [
      "r109",
      "r321",
      "r325"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current Federal Tax Expense (Benefit)",
        "verboseLabel": "Federal"
       }
      }
     },
     "localname": "CurrentFederalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentForeignTaxExpenseBenefit": {
     "auth_ref": [
      "r111",
      "r323"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current Foreign Tax Expense (Benefit)",
        "verboseLabel": "Foreign"
       }
      }
     },
     "localname": "CurrentForeignTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r109",
      "r321",
      "r325"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current Income Tax Expense (Benefit)",
        "totalLabel": "Total current income tax provision"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "verboseLabel": "Current"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": {
     "auth_ref": [
      "r109",
      "r321",
      "r325"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Current State and Local Tax Expense (Benefit)",
        "verboseLabel": "State"
       }
      }
     },
     "localname": "CurrentStateAndLocalTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r136"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]",
        "terseLabel": "Customer Concentration Risk"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerRelationshipsMember": {
     "auth_ref": [
      "r340"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.",
        "label": "Customer Relationships [Member]",
        "terseLabel": "Customer relationships"
       }
      }
     },
     "localname": "CustomerRelationshipsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r223"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.",
        "label": "Debt Disclosure [Text Block]",
        "verboseLabel": "Revolving Line of Credit"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilities"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DeferredCompensationArrangementWithIndividualSharesIssued": {
     "auth_ref": [
      "r278"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares issued pursuant to the terms of a deferred compensation arrangement.",
        "label": "Deferred Compensation Arrangement with Individual, Shares Issued",
        "terseLabel": "Conversion of deferred compensation"
       }
      }
     },
     "localname": "DeferredCompensationArrangementWithIndividualSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r109",
      "r322",
      "r325"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred federal income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Federal Income Tax Expense (Benefit)",
        "verboseLabel": "Federal"
       }
      }
     },
     "localname": "DeferredFederalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r109",
      "r322",
      "r325"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Foreign Income Tax Expense (Benefit)",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "DeferredForeignIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r315"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.",
        "label": "Deferred Income Tax Assets, Net",
        "verboseLabel": "Deferred tax assets"
       }
      }
     },
     "localname": "DeferredIncomeTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r97",
      "r109",
      "r322",
      "r325"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred Income Tax Expense (Benefit)",
        "totalLabel": "Total deferred income tax provision"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "verboseLabel": "Deferred"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilities": {
     "auth_ref": [
      "r18",
      "r19",
      "r311",
      "r426",
      "r435"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.",
        "label": "Deferred Tax Liabilities, Gross",
        "terseLabel": "Total deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r297",
      "r315"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred Income Tax Liabilities, Net",
        "terseLabel": "Deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredRevenueCurrent": {
     "auth_ref": [
      "r28"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.",
        "label": "Deferred Revenue, Current",
        "terseLabel": "Deferred revenue and customer advances"
       }
      }
     },
     "localname": "DeferredRevenueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r109",
      "r322",
      "r325"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred state and local tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred State and Local Income Tax Expense (Benefit)",
        "verboseLabel": "State"
       }
      }
     },
     "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsGross": {
     "auth_ref": [
      "r312"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Gross",
        "totalLabel": "Gross deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsLiabilitiesNet": {
     "auth_ref": [
      "r315"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting.",
        "label": "Deferred Tax Assets, Net",
        "totalLabel": "Net deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNet": {
     "auth_ref": [
      "r313"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.",
        "label": "Deferred Tax Assets, Net of Valuation Allowance",
        "totalLabel": "Total deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsNetOfValuationAllowanceAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Deferred Tax Assets, Net of Valuation Allowance [Abstract]",
        "verboseLabel": "Deferred tax assets"
       }
      }
     },
     "localname": "DeferredTaxAssetsNetOfValuationAllowanceAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxAssetsOther": {
     "auth_ref": [
      "r291",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other.",
        "label": "Deferred Tax Assets, Other",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxAssetsOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsPropertyPlantAndEquipment": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from property, plant, and equipment.",
        "label": "Deferred Tax Assets, Property, Plant and Equipment",
        "terseLabel": "Property and equipment"
       }
      }
     },
     "localname": "DeferredTaxAssetsPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxCreditCarryforwards": {
     "auth_ref": [
      "r317",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, before allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards.",
        "label": "Deferred Tax Assets, Tax Credit Carryforwards",
        "verboseLabel": "Tax credits and net operating loss carryforwards"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxCreditCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": {
     "auth_ref": [
      "r290",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-based Compensation Cost",
        "verboseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther": {
     "auth_ref": [
      "r290",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from reserves and accruals, classified as other.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Other",
        "terseLabel": "Accruals and other liabilities"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances": {
     "auth_ref": [
      "r290",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from estimated returns and sales allowances.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Returns and Allowances",
        "terseLabel": "Revenue reserves"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r314"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "negatedTerseLabel": "Valuation allowance",
        "terseLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails",
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Deferred Tax Liabilities, Gross [Abstract]",
        "verboseLabel": "Deferred tax liabilities"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r291",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.",
        "label": "Deferred Tax Liabilities, Intangible Assets",
        "verboseLabel": "Intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesLeasingArrangements": {
     "auth_ref": [
      "r291",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from leasing arrangements.",
        "label": "Deferred Tax Liabilities, Leasing Arrangements",
        "terseLabel": "Operating lease right-of-use assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesLeasingArrangements",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesOther": {
     "auth_ref": [
      "r291",
      "r319",
      "r320"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other.",
        "label": "Deferred Tax Liabilities, Other",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNetDeferredTaxAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanCostRecognized": {
     "auth_ref": [
      "r243"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost for defined contribution plan.",
        "label": "Defined Contribution Plan, Cost",
        "terseLabel": "Defined Contribution Plan, Cost"
       }
      }
     },
     "localname": "DefinedContributionPlanCostRecognized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/EmployeeBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay",
        "terseLabel": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/EmployeeBenefitsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage employer matches of the employee's percentage contribution matched.",
        "label": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match",
        "terseLabel": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/EmployeeBenefitsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.",
        "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent",
        "terseLabel": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent"
       }
      }
     },
     "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/EmployeeBenefitsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r97",
      "r205"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Depreciation",
        "terseLabel": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r97",
      "r146"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "Depreciation, Depletion and Amortization",
        "verboseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeAssets": {
     "auth_ref": [
      "r55",
      "r56",
      "r395"
     ],
     "calculation": {
      "http://www.irobot.com/role/FairValueMeasurementsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Derivative Asset",
        "terseLabel": "Derivative instruments (Note 11)",
        "verboseLabel": "Derivative Asset"
       }
      }
     },
     "localname": "DerivativeAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeContractTypeDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Financial instrument 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.",
        "label": "Derivative Contract [Domain]",
        "terseLabel": "Derivative Contract [Domain]"
       }
      }
     },
     "localname": "DerivativeContractTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DerivativeFairValueOfDerivativeNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Derivative, Fair Value, Net [Abstract]",
        "terseLabel": "Derivative, Fair Value, Net [Abstract]"
       }
      }
     },
     "localname": "DerivativeFairValueOfDerivativeNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentRiskAxis": {
     "auth_ref": [
      "r366",
      "r367",
      "r373",
      "r376"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of derivative contract.",
        "label": "Derivative Instrument [Axis]",
        "terseLabel": "Derivative Instrument [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentRiskAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": {
     "auth_ref": [
      "r383"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]",
        "terseLabel": "Derivative Instruments and Hedging Activities"
       }
      }
     },
     "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis": {
     "auth_ref": [
      "r362",
      "r366",
      "r373"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of hedging relationship.",
        "label": "Hedging Relationship [Axis]",
        "terseLabel": "Hedging Relationship [Axis]"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable": {
     "auth_ref": [
      "r362",
      "r366",
      "r373",
      "r376",
      "r377",
      "r379",
      "r381"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about 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.",
        "label": "Derivative Instruments, Gain (Loss) [Table]",
        "terseLabel": "Derivative Instruments, Gain (Loss) [Table]"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Derivative Instruments, Gain (Loss) [Line Items]",
        "terseLabel": "Derivative Instruments, Gain (Loss) [Line Items]"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet": {
     "auth_ref": [
      "r370",
      "r375"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The effective portion of net gain (loss) reclassified from accumulated other comprehensive income into income on derivative instruments designated and qualifying as hedging instruments.",
        "label": "Derivative Instruments, Gain (Loss) Reclassified from Accumulated OCI into Income, Effective Portion, Net",
        "terseLabel": "Effective portion, Gain (loss) reclassified from accumulated OCI into income"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossReclassifiedFromAccumulatedOCIIntoIncomeEffectivePortionNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet": {
     "auth_ref": [
      "r371",
      "r380"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Derivative Instruments, Gain (Loss) Recognized in Income, Ineffective Portion and Amount Excluded from Effectiveness Testing, Net",
        "terseLabel": "Ineffective portion, Gain (loss) recognized in income"
       }
      }
     },
     "localname": "DerivativeInstrumentsGainLossRecognizedInIncomeIneffectivePortionAndAmountExcludedFromEffectivenessTestingNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet": {
     "auth_ref": [
      "r372",
      "r374"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of realized and unrealized gain (loss) of derivative instruments not designated or qualifying as hedging instruments.",
        "label": "Derivative Instruments Not Designated as Hedging Instruments, Gain (Loss), Net",
        "terseLabel": "Gain (loss) recognized in income"
       }
      }
     },
     "localname": "DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeLiabilities": {
     "auth_ref": [
      "r55",
      "r56",
      "r395"
     ],
     "calculation": {
      "http://www.irobot.com/role/FairValueMeasurementsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Derivative Liability",
        "terseLabel": "Derivative instruments (Note 11)",
        "verboseLabel": "Derivative Liability"
       }
      }
     },
     "localname": "DerivativeLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeNotionalAmount": {
     "auth_ref": [
      "r358",
      "r360"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Nominal or face amount used to calculate payment on derivative.",
        "label": "Derivative, Notional Amount",
        "terseLabel": "Derivative, Notional Amount"
       }
      }
     },
     "localname": "DerivativeNotionalAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DerivativeTermOfContract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period the derivative contract is outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Derivative, Term of Contract",
        "terseLabel": "Derivative, Term of Contract"
       }
      }
     },
     "localname": "DerivativeTermOfContract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_DerivativesFairValueLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Derivatives, Fair Value [Line Items]",
        "terseLabel": "Derivatives, Fair Value [Line Items]"
       }
      }
     },
     "localname": "DerivativesFairValueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DerivativesPolicyTextBlock": {
     "auth_ref": [
      "r105",
      "r112",
      "r357",
      "r359",
      "r362",
      "r364",
      "r378"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for its derivative instruments and hedging activities.",
        "label": "Derivatives, Policy [Policy Text Block]",
        "terseLabel": "Financial Instruments and Hedging Activities"
       }
      }
     },
     "localname": "DerivativesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DesignatedAsHedgingInstrumentMember": {
     "auth_ref": [
      "r362"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Derivative instrument designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).",
        "label": "Designated as Hedging Instrument [Member]",
        "terseLabel": "Derivatives designated as cash flow hedges:"
       }
      }
     },
     "localname": "DesignatedAsHedgingInstrumentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DisaggregationOfRevenueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Disaggregation of Revenue [Abstract]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Disaggregation of Revenue [Line Items]",
        "terseLabel": "Disaggregation of Revenue [Line Items]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table]",
        "terseLabel": "Disaggregation of Revenue [Table]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "auth_ref": [
      "r231"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "terseLabel": "Disaggregation of Revenue [Table Text Block]"
       }
      }
     },
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Discontinued Operations and Disposal Groups [Abstract]"
       }
      }
     },
     "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of consideration received or receivable for the disposal of assets and liabilities, including discontinued operation.",
        "label": "Disposal Group, Including Discontinued Operation, Consideration",
        "terseLabel": "Disposal Group, Including Discontinued Operation, Consideration"
       }
      }
     },
     "localname": "DisposalGroupIncludingDiscontinuedOperationConsideration",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DivestitureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupNotDiscontinuedOperationGainLossOnDisposal": {
     "auth_ref": [
      "r97",
      "r204",
      "r209"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before tax of gain (loss) recognized on the sale or disposal of a disposal group. Excludes discontinued operations.",
        "label": "Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal",
        "terseLabel": "Disposal Group, Not Discontinued Operation, Gain (Loss) on Disposal"
       }
      }
     },
     "localname": "DisposalGroupNotDiscontinuedOperationGainLossOnDisposal",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DivestitureDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": {
     "auth_ref": [
      "r0",
      "r211"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.",
        "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]",
        "terseLabel": "Divestiture"
       }
      }
     },
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DivestitureNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DistributionRightsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Legal rights, generally of a limited duration, to distribute a product or products, often within specific geographic areas or supply channels.",
        "label": "Distribution Rights [Member]",
        "terseLabel": "Reacquired distribution rights"
       }
      }
     },
     "localname": "DistributionRightsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DomesticCountryMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.",
        "label": "Domestic Tax Authority [Member]",
        "terseLabel": "Federal"
       }
      }
     },
     "localname": "DomesticCountryMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DomesticDestinationMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Domestic destinations determined principally based on geographic region as defined by the U.S. Department of Transportation.",
        "label": "Domestic Destination [Member]",
        "terseLabel": "Domestic Destination [Member]"
       }
      }
     },
     "localname": "DomesticDestinationMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EMEAMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Regions of Europe, Middle East and Africa.",
        "label": "EMEA [Member]",
        "terseLabel": "EMEA [Member]"
       }
      }
     },
     "localname": "EMEAMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "verboseLabel": "Net income per share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r76",
      "r117",
      "r120",
      "r121",
      "r122",
      "r123",
      "r127",
      "r432",
      "r444"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Earnings Per Share, Basic",
        "terseLabel": "Basic"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails",
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/NetIncomePerShareDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareBasicAndDilutedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Earnings Per Share, Basic and Diluted [Abstract]",
        "verboseLabel": "Basic and Diluted Net Income Per Share"
       }
      }
     },
     "localname": "EarningsPerShareBasicAndDilutedAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/NetIncomePerShareDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r76",
      "r117",
      "r120",
      "r121",
      "r122",
      "r123",
      "r127",
      "r432",
      "r444"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Earnings Per Share, Diluted",
        "terseLabel": "Diluted"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails",
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/NetIncomePerShareDetails",
      "http://www.irobot.com/role/QuarterlyInformationUnauditedDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r105",
      "r124",
      "r125",
      "r126"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Earnings Per Share, Policy [Policy Text Block]",
        "verboseLabel": "Net Income Per Share"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents": {
     "auth_ref": [
      "r398"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.",
        "label": "Effect of Exchange Rate on Cash and Cash Equivalents",
        "terseLabel": "Effect of exchange rate changes on cash and cash equivalents"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashAndCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount": {
     "auth_ref": [
      "r298"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operations, attributable to Tax Cuts and Jobs Act.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Cuts and Jobs Act, Amount",
        "terseLabel": "Tax Cuts and Jobs Act of 2017"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017Amount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r277"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "verboseLabel": "Weighted average remaining recognition period"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": {
     "auth_ref": [
      "r277"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount",
        "terseLabel": "Compensation cost not yet recognized"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": {
     "auth_ref": [
      "r277"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost to be recognized for option under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount",
        "verboseLabel": "Compensation not yet recognized, options"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeStockMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "An Employee Stock Purchase Plan is a tax-efficient means by which employees of a corporation can purchase the corporation's stock.",
        "label": "Employee Stock [Member]",
        "terseLabel": "Employee Stock"
       }
      }
     },
     "localname": "EmployeeStockMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EmployeeStockOptionMember": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.",
        "label": "Share-based Payment Arrangement, Option [Member]",
        "terseLabel": "Employee Stock Option"
       }
      }
     },
     "localname": "EmployeeStockOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "localname": "EquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r224"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]",
        "terseLabel": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/StockBasedCompensationTables",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount": {
     "auth_ref": [
      "r166"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of investment in equity security without readily determinable fair value.",
        "label": "Equity Securities without Readily Determinable Fair Value, Amount",
        "terseLabel": "Equity Securities without Readily Determinable Fair Value, Amount"
       }
      }
     },
     "localname": "EquitySecuritiesWithoutReadilyDeterminableFairValueAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ExcessTaxBenefitFromShareBasedCompensationFinancingActivities": {
     "auth_ref": [
      "r284"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from realized tax benefit related to deductible compensation cost reported on the entity's tax return for equity instruments in excess of the compensation cost for those instruments recognized for financial reporting purposes.",
        "label": "Excess Tax Benefit from Share-based Compensation, Financing Activities",
        "verboseLabel": "Tax benefit of excess stock-based compensation deductions"
       }
      }
     },
     "localname": "ExcessTaxBenefitFromShareBasedCompensationFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ExtendedProductWarrantyDescription": {
     "auth_ref": [
      "r215"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Describes the nature of the extended product warranties, which generally require additional fees to be paid by the buyer, and other guarantee contracts excluded from the initial recognition and initial measurement requirements. Does not include disclosures for standard product warranties, which typically have substantially shorter periods of time or provide less coverage, or both.",
        "label": "Extended Product Warranty Description",
        "terseLabel": "Warrant term"
       }
      }
     },
     "localname": "ExtendedProductWarrantyDescription",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]",
        "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "auth_ref": [
      "r384",
      "r385",
      "r386",
      "r391"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.",
        "label": "Fair Value, Recurring and Nonrecurring [Table]",
        "terseLabel": "Fair Value, Recurring and Nonrecurring [Table]"
       }
      }
     },
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "auth_ref": [
      "r240",
      "r241",
      "r242",
      "r385",
      "r416"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.",
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "terseLabel": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueByMeasurementFrequencyAxis": {
     "auth_ref": [
      "r384",
      "r385",
      "r387",
      "r388",
      "r392"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by measurement frequency.",
        "label": "Measurement Frequency [Axis]",
        "terseLabel": "Measurement Frequency [Axis]"
       }
      }
     },
     "localname": "FairValueByMeasurementFrequencyAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "localname": "FairValueDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r390"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Fair Value Disclosures [Text Block]",
        "terseLabel": "Fair Value Measurements"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "auth_ref": [
      "r240",
      "r241",
      "r242",
      "r385",
      "r417"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.",
        "label": "Fair Value, Inputs, Level 1 [Member]",
        "terseLabel": "Level 1"
       }
      }
     },
     "localname": "FairValueInputsLevel1Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "auth_ref": [
      "r240",
      "r241",
      "r242",
      "r385",
      "r418"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.",
        "label": "Fair Value, Inputs, Level 2 [Member]",
        "terseLabel": "Level 2"
       }
      }
     },
     "localname": "FairValueInputsLevel2Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "auth_ref": [
      "r240",
      "r241",
      "r242",
      "r385",
      "r419"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.",
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "terseLabel": "Level 3 (2)"
       }
      }
     },
     "localname": "FairValueInputsLevel3Member",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementFrequencyDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Measurement frequency.",
        "label": "Measurement Frequency [Domain]",
        "terseLabel": "Measurement Frequency [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementFrequencyDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3": {
     "auth_ref": [
      "r389"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of transfers of financial instrument classified as an asset out of level 3 of the fair value hierarchy.",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers out of Level 3",
        "negatedTerseLabel": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers out of Level 3"
       }
      }
     },
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.",
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "terseLabel": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueMeasurementsRecurringMember": {
     "auth_ref": [
      "r390",
      "r392"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value.",
        "label": "Fair Value, Recurring [Member]",
        "terseLabel": "Recurring"
       }
      }
     },
     "localname": "FairValueMeasurementsRecurringMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "auth_ref": [
      "r105",
      "r393",
      "r394"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments.",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "verboseLabel": "Fair Value Measurements"
       }
      }
     },
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": {
     "auth_ref": [
      "r365",
      "r369",
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule that discloses 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.",
        "label": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]",
        "terseLabel": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]"
       }
      }
     },
     "localname": "FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FinancialInstrumentAxis": {
     "auth_ref": [
      "r168",
      "r169",
      "r170",
      "r171",
      "r172",
      "r174",
      "r175",
      "r176",
      "r177"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of financial instrument.",
        "label": "Financial Instrument [Axis]",
        "terseLabel": "Schedule of Available-for-sale Securities, Major Types of Debt and Equity Securities [Axis]"
       }
      }
     },
     "localname": "FinancialInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r197"
     ],
     "calculation": {
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "verboseLabel": "Accumulated Amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r199"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r199"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Five"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r199"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Four"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r199"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Three"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r199"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two",
        "terseLabel": "Finite-Lived Intangible Assets, Amortization Expense, Year Two"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "auth_ref": [
      "r191",
      "r194",
      "r197",
      "r200",
      "r421"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by major type or class of finite-lived intangible assets.",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r197",
      "r421"
     ],
     "calculation": {
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Gross",
        "verboseLabel": "Cost"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Assets [Line Items]",
        "terseLabel": "Finite-Lived Intangible Assets [Line Items]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "auth_ref": [
      "r191",
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r197"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Net",
        "terseLabel": "Intangible assets, net",
        "totalLabel": "Net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Finite-Lived Intangible Assets, Net [Abstract]",
        "terseLabel": "Finite-Lived Intangible Assets, Net [Abstract]"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_FinitelivedIntangibleAssetsAcquired1": {
     "auth_ref": [
      "r192"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.",
        "label": "Finite-lived Intangible Assets Acquired",
        "terseLabel": "Intangible assets acquired, fair value"
       }
      }
     },
     "localname": "FinitelivedIntangibleAssetsAcquired1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiscalPeriod": {
     "auth_ref": [
      "r350",
      "r355",
      "r356"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for determining an entity's fiscal year or other fiscal period. This disclosure may include identification of the fiscal period end-date, the length of the fiscal period, any reporting period lag between the entity and its subsidiaries, or equity investees. If a reporting lag exists, the closing date of the entity having a different period end is generally noted, along with an explanation of the necessity for using different closing dates. Any intervening events that materially affect the entity's financial position or results of operations are generally also disclosed.",
        "label": "Fiscal Period, Policy [Policy Text Block]",
        "verboseLabel": "Fiscal Year-End"
       }
      }
     },
     "localname": "FiscalPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ForeignExchangeForwardMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Foreign exchange forward traded on an exchange (examples include but are not limited to the International Securities Exchange, Philadelphia Stock Exchange, or the Chicago Mercantile Exchange) for options or future contracts to buy or sell a certain currency, at a specified date, at a fixed exercise exchange rate.",
        "label": "Foreign Exchange Forward [Member]",
        "terseLabel": "Foreign currency forward contracts"
       }
      }
     },
     "localname": "ForeignExchangeForwardMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ForeignExchangeOptionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "An option that allows the holder to buy (if call) or sell (if put) an underlying currency at a fixed exercise rate, expressed as an exchange, during a specified period (an American option) or at a specified date (a European option).",
        "label": "Foreign Exchange Option [Member]",
        "terseLabel": "Foreign currency forward contracts"
       }
      }
     },
     "localname": "ForeignExchangeOptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.",
        "label": "Furniture and Fixtures [Member]",
        "terseLabel": "Furniture and fixtures"
       }
      }
     },
     "localname": "FurnitureAndFixturesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GainLossOnSaleOfEquityInvestments": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The difference between the carrying value and the sale price of equity securities, not separately or otherwise categorized as trading or available-for-sale. This element includes investments in which the entity holds a small ownership stake (generally, less than 20% of the shares outstanding) and cannot exert significant influence.",
        "label": "Gain (Loss) on Sale of Equity Investments",
        "negatedTerseLabel": "Gain on sale of equity investment",
        "terseLabel": "Gain (Loss) on Sale of Equity Investments"
       }
      }
     },
     "localname": "GainLossOnSaleOfEquityInvestments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r81"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and Administrative Expense",
        "verboseLabel": "General and administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpenseMember": {
     "auth_ref": [
      "r77"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing general and administrative expense.",
        "label": "General and Administrative Expense [Member]",
        "terseLabel": "General and Administrative Expense [Member]",
        "verboseLabel": "General and administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "auth_ref": [
      "r137"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa).",
        "label": "Geographic Concentration Risk [Member]",
        "terseLabel": "Geographic Concentration Risk"
       }
      }
     },
     "localname": "GeographicConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GeographicDistributionForeignMember": {
     "auth_ref": [
      "r173"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Allocation of business activity identified as foreign.",
        "label": "Geographic Distribution, Foreign [Member]",
        "terseLabel": "Geographic Distribution, Foreign [Member]"
       }
      }
     },
     "localname": "GeographicDistributionForeignMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r183",
      "r184"
     ],
     "calculation": {
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails": {
       "order": 4.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      },
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails": {
       "order": 6.0,
       "parentTag": "irbt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredandLiabilitiesAssumedAssetsIncludingGoodwill",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Goodwill",
        "periodEndLabel": "Goodwill",
        "periodStartLabel": "Goodwill",
        "terseLabel": "Goodwill"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails",
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAcquiredDuringPeriod": {
     "auth_ref": [
      "r185"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.",
        "label": "Goodwill, Acquired During Period",
        "terseLabel": "Goodwill, Acquired During Period"
       }
      }
     },
     "localname": "GoodwillAcquiredDuringPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r203"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "verboseLabel": "Goodwill and other intangible assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssets"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r105",
      "r188",
      "r195"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.",
        "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]",
        "terseLabel": "Goodwill and Other Long-Lived Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "auth_ref": [
      "r186"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Foreign Currency Translation Gain (Loss)",
        "terseLabel": "Effect of foreign currency translation"
       }
      }
     },
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillPurchaseAccountingAdjustments": {
     "auth_ref": [
      "r187",
      "r330"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Goodwill, Purchase Accounting Adjustments",
        "terseLabel": "Goodwill, Purchase Accounting Adjustments",
        "verboseLabel": "Acquisition"
       }
      }
     },
     "localname": "GoodwillPurchaseAccountingAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Goodwill [Roll Forward]",
        "terseLabel": "Goodwill [Roll Forward]"
       }
      }
     },
     "localname": "GoodwillRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsGoodwillDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r79"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross Profit",
        "totalLabel": "Gross profit",
        "verboseLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/QuarterlyInformationUnauditedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_HedgingDesignationAxis": {
     "auth_ref": [
      "r362",
      "r377"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Axis]",
        "terseLabel": "Hedging Designation [Axis]"
       }
      }
     },
     "localname": "HedgingDesignationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_HedgingDesignationDomain": {
     "auth_ref": [
      "r362"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Designation of purpose of derivative instrument.",
        "label": "Hedging Designation [Domain]",
        "terseLabel": "Hedging Designation [Domain]"
       }
      }
     },
     "localname": "HedgingDesignationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_HedgingRelationshipDomain": {
     "auth_ref": [
      "r362"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Nature or intent of a hedge.",
        "label": "Hedging Relationship [Domain]",
        "terseLabel": "Hedging Relationship [Domain]"
       }
      }
     },
     "localname": "HedgingRelationshipDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "auth_ref": [
      "r110"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic",
        "terseLabel": "Domestic"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r74",
      "r117",
      "r422",
      "r430",
      "r445"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      },
      "http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "totalLabel": "Income before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": {
     "auth_ref": [
      "r110"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign",
        "terseLabel": "Foreign"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesIncomeLossBeforeProvisionForIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r210"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]",
        "verboseLabel": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs, by Report Line [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location [Domain]",
        "verboseLabel": "Employee Service Share-based Compensation, Allocation of Recognized Period Costs, Report Line [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxAuthorityAxis": {
     "auth_ref": [
      "r301"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by tax jurisdiction.",
        "label": "Income Tax Authority [Axis]",
        "terseLabel": "Income Tax Authority [Axis]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxAuthorityDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.",
        "label": "Income Tax Authority [Domain]",
        "terseLabel": "Income Tax Authority [Domain]"
       }
      }
     },
     "localname": "IncomeTaxAuthorityDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r328"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Income Tax Disclosure [Text Block]",
        "verboseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r109",
      "r147",
      "r326"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      },
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)",
        "totalLabel": "Total income tax provision",
        "verboseLabel": "Income tax expense"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefitContinuingOperationsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Income Tax Expense (Benefit), Continuing Operations [Abstract]",
        "verboseLabel": "Components of income tax expense"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefitContinuingOperationsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesComponentsOfIncomeTaxExpenseDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r71",
      "r105",
      "r294",
      "r295",
      "r309",
      "r310",
      "r316",
      "r327",
      "r450"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.",
        "label": "Income Tax, Policy [Policy Text Block]",
        "verboseLabel": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r293",
      "r298",
      "r299"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 11.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount 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 increase (decrease) in the valuation allowance for deferred tax assets.",
        "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount",
        "terseLabel": "Change in valuation allowance"
       }
      }
     },
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities": {
     "auth_ref": [
      "r298",
      "r299"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to deduction for qualified production activity.",
        "label": "Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount",
        "negatedTerseLabel": "Domestic production activities deduction"
       }
      }
     },
     "localname": "IncomeTaxReconciliationDeductionsQualifiedProductionActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r108",
      "r298",
      "r299"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount",
        "verboseLabel": "Statutory federal income tax"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpense": {
     "auth_ref": [
      "r298",
      "r299"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount 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 nondeductible expenses.",
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount",
        "totalLabel": "Total expected tax (benefits) expenses"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationNondeductibleExpenseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount [Abstract]",
        "verboseLabel": "Reconciliation of the expected tax (benefit) expense"
       }
      }
     },
     "localname": "IncomeTaxReconciliationNondeductibleExpenseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r298"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 12.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount 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.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r108",
      "r298",
      "r299"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount 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 state and local income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount",
        "verboseLabel": "State taxes (net of federal benefit)"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxCredits": {
     "auth_ref": [
      "r298",
      "r299"
     ],
     "calculation": {
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeTaxReconciliationNondeductibleExpense",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount 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.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Amount",
        "negatedLabel": "Federal and state credits"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationTaxSettlements": {
     "auth_ref": [
      "r298",
      "r299"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount 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 income tax settlements. Including, but not limited to, domestic tax settlement, foreign tax settlement, state and local tax settlement, and other tax settlements.",
        "label": "Effective Income Tax Rate Reconciliation, Tax Settlement, Amount",
        "terseLabel": "Statute of limitation expirations of uncertain tax positions"
       }
      }
     },
     "localname": "IncomeTaxReconciliationTaxSettlements",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaid": {
     "auth_ref": [
      "r94",
      "r101"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.",
        "label": "Income Taxes Paid",
        "verboseLabel": "Cash paid for income taxes"
       }
      }
     },
     "localname": "IncomeTaxesPaid",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Increase (Decrease) in Accounts Payable",
        "verboseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Increase (Decrease) in Accounts Receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Increase (Decrease) in Deferred Income Taxes",
        "negatedTerseLabel": "Deferred income taxes, net"
       }
      }
     },
     "localname": "IncreaseDecreaseInDeferredIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInDeferredRevenue": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.",
        "label": "Increase (Decrease) in Deferred Revenue",
        "verboseLabel": "Deferred revenue and customer advances"
       }
      }
     },
     "localname": "IncreaseDecreaseInDeferredRevenue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventory"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "verboseLabel": "Changes in operating assets and liabilities \u2014 (use) source"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in other expenses incurred but not yet paid.",
        "label": "Increase (Decrease) in Other Accrued Liabilities",
        "verboseLabel": "Accrued expenses and other liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "Increase (Decrease) in Other Operating Assets",
        "negatedLabel": "Other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating liabilities classified as other.",
        "label": "Increase (Decrease) in Other Operating Liabilities",
        "verboseLabel": "Long-term liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]"
       }
      }
     },
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis": {
     "auth_ref": [
      "r236"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information about effect of transition method for cumulative effect in initial period of application.",
        "label": "Initial Application Period Cumulative Effect Transition [Axis]",
        "terseLabel": "Initial Application Period Cumulative Effect Transition [Axis]"
       }
      }
     },
     "localname": "InitialApplicationPeriodCumulativeEffectTransitionAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Effect of transition method for cumulative effect in initial period of application.",
        "label": "Initial Application Period Cumulative Effect Transition [Domain]",
        "terseLabel": "Initial Application Period Cumulative Effect Transition [Domain]"
       }
      }
     },
     "localname": "InitialApplicationPeriodCumulativeEffectTransitionDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InternalUseSoftwarePolicy": {
     "auth_ref": [
      "r105",
      "r201",
      "r202"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs incurred when both (1) the software is acquired, internally developed, or modified solely to meet the entity's internal needs, and (2) during the software's development or modification, no substantive plan exists or is being developed to market the software externally.",
        "label": "Internal Use Software, Policy [Policy Text Block]",
        "verboseLabel": "Internal Use Software"
       }
      }
     },
     "localname": "InternalUseSoftwarePolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r182"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Inventory Disclosure [Text Block]",
        "verboseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/Inventory"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r29",
      "r181"
     ],
     "calculation": {
      "http://www.irobot.com/role/InventoryDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Inventory, Finished Goods, Net of Reserves",
        "verboseLabel": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/InventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r2",
      "r51",
      "r178"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://www.irobot.com/role/InventoryDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Net",
        "totalLabel": "Total",
        "verboseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/InventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNetAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Inventory, Net [Abstract]",
        "verboseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryNetAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/InventoryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r8",
      "r52",
      "r105",
      "r128",
      "r179",
      "r180"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventory, Policy [Policy Text Block]",
        "verboseLabel": "Inventory"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r30",
      "r181"
     ],
     "calculation": {
      "http://www.irobot.com/role/InventoryDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Inventory, Raw Materials, Net of Reserves",
        "terseLabel": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/InventoryDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InvestmentPolicyTextBlock": {
     "auth_ref": [
      "r167"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for investment in financial asset.",
        "label": "Investment, Policy [Policy Text Block]",
        "verboseLabel": "Other Assets"
       }
      }
     },
     "localname": "InvestmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Investments, Debt and Equity Securities [Abstract]"
       }
      }
     },
     "localname": "InvestmentsDebtAndEquitySecuritiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures": {
     "auth_ref": [
      "r35"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of investment in equity method investee and investment in and advance to affiliate.",
        "label": "Investments in and Advance to Affiliates, Subsidiaries, Associates, and Joint Ventures",
        "terseLabel": "Cost and equity method investments"
       }
      }
     },
     "localname": "InvestmentsInAffiliatesSubsidiariesAssociatesAndJointVentures",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r412"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.",
        "label": "Lease, Cost [Table Text Block]",
        "terseLabel": "Lease, Cost [Table Text Block]"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdsAndLeaseholdImprovementsMember": {
     "auth_ref": [
      "r206"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Assets held by a lessee under a capital lease and any addition or improvement to assets held under a lease arrangement (including addition or improvement to assets held by lessee under an operating lease arrangement).",
        "label": "Leaseholds and Leasehold Improvements [Member]",
        "terseLabel": "Leasehold improvements"
       }
      }
     },
     "localname": "LeaseholdsAndLeaseholdImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r413"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]",
        "terseLabel": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r413"
     ],
     "calculation": {
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due",
        "totalLabel": "Lessee, Operating Lease, Liability, Payments, Due"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r413"
     ],
     "calculation": {
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due after fifth fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Five",
        "terseLabel": "Lessee, Operating Lease, Liability, Payments, Due after Year Five"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r413"
     ],
     "calculation": {
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months",
        "terseLabel": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails",
      "http://www.irobot.com/role/MaturityOfOperatingLeaseLiabilityDetailsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r413"
     ],
     "calculation": {
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Five",
        "terseLabel": "Lessee, Operating Lease, Liability, Payments, Due Year Five"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r413"
     ],
     "calculation": {
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four",
        "terseLabel": "Lessee, Operating Lease, Liability, Payments, Due Year Four"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r413"
     ],
     "calculation": {
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three",
        "terseLabel": "Lessee, Operating Lease, Liability, Payments, Due Year Three"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r413"
     ],
     "calculation": {
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second fiscal year following latest fiscal year.",
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two",
        "terseLabel": "Lessee, Operating Lease, Liability, Payments, Due Year Two"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r413"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "terseLabel": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r415"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Lessee, Operating Leases [Text Block]",
        "terseLabel": "Lessee, Operating Leases [Text Block]"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LettersOfCreditOutstandingAmount": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.",
        "label": "Letters of Credit Outstanding, Amount",
        "terseLabel": "Letters of Credit Outstanding, Amount"
       }
      }
     },
     "localname": "LettersOfCreditOutstandingAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r43"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r27",
      "r428",
      "r440"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Liabilities and Equity",
        "totalLabel": "Total liabilities and stockholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities and Equity [Abstract]",
        "verboseLabel": "LIABILITIES AND STOCKHOLDERS\u2019 EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r45"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Liabilities, Current",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "verboseLabel": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesFairValueDisclosure": {
     "auth_ref": [
      "r384"
     ],
     "calculation": {
      "http://www.irobot.com/role/FairValueMeasurementsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fair value of financial and nonfinancial obligations.",
        "label": "Financial and Nonfinancial Liabilities, Fair Value Disclosure",
        "totalLabel": "Total liabilities measured at fair value"
       }
      }
     },
     "localname": "LiabilitiesFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesFairValueDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Liabilities, Fair Value Disclosure [Abstract]",
        "terseLabel": "Liabilities:"
       }
      }
     },
     "localname": "LiabilitiesFairValueDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "auth_ref": [
      "r9",
      "r10",
      "r11",
      "r16",
      "r17"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer.",
        "label": "Liabilities, Noncurrent",
        "totalLabel": "Total long-term liabilities"
       }
      }
     },
     "localname": "LiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCredit": {
     "auth_ref": [
      "r16",
      "r427",
      "r436"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "Long-term Line of Credit",
        "terseLabel": "Line of Credit Facility, Amount Outstanding"
       }
      }
     },
     "localname": "LineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityCommitmentFeePercentage": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for the line of credit facility regardless of whether the facility has been used.",
        "label": "Line of Credit Facility, Commitment Fee Percentage",
        "terseLabel": "Line of Credit Facility, Commitment Fee Percentage"
       }
      }
     },
     "localname": "LineOfCreditFacilityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LineOfCreditFacilityExpirationDate1": {
     "auth_ref": [
      "r42"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Date the credit facility terminates, in CCYY-MM-DD format.",
        "label": "Line of Credit Facility, Expiration Date",
        "verboseLabel": "Termination date for all outstanding amount and credit facility"
       }
      }
     },
     "localname": "LineOfCreditFacilityExpirationDate1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_LineOfCreditFacilityInterestRateDescription": {
     "auth_ref": [
      "r42"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Description of the interest rate for the amounts borrowed under the credit facility, including the terms and the method for determining the interest rate (for example, fixed or variable, LIBOR plus a percentage, increasing rate, timing of interest rate resets, remarketing provisions).",
        "label": "Line of Credit Facility, Interest Rate Description",
        "verboseLabel": "Interest on loans under the credit facility"
       }
      }
     },
     "localname": "LineOfCreditFacilityInterestRateDescription",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r42"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "Line of Credit Facility, Maximum Borrowing Capacity",
        "verboseLabel": "Maximum amount available for borrowing under credit facility"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/WorkingCapitalFacilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.",
        "label": "Machinery and Equipment [Member]",
        "terseLabel": "Machinery and tooling"
       }
      }
     },
     "localname": "MachineryAndEquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MoneyMarketFundsMember": {
     "auth_ref": [
      "r240"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities.",
        "label": "Money Market Funds [Member]",
        "terseLabel": "Money market funds"
       }
      }
     },
     "localname": "MoneyMarketFundsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MovementInStandardProductWarrantyAccrualRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Movement in Standard Product Warranty Accrual [Roll Forward]",
        "verboseLabel": "Activity related to the warranty accrual"
       }
      }
     },
     "localname": "MovementInStandardProductWarrantyAccrualRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails1"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_MovementInValuationAllowancesAndReservesRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]",
        "terseLabel": "SEC Schedule, 12-09, Movement in Valuation Allowances and Reserves [Roll Forward]"
       }
      }
     },
     "localname": "MovementInValuationAllowancesAndReservesRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NatureOfOperations": {
     "auth_ref": [
      "r131",
      "r143"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.",
        "label": "Nature of Operations [Text Block]",
        "terseLabel": "Nature of the Business"
       }
      }
     },
     "localname": "NatureOfOperations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/NatureOfBusiness"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "Net cash (used in) provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "verboseLabel": "Cash flows from financing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r93"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "verboseLabel": "Cash flows from investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r93",
      "r95",
      "r98"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "verboseLabel": "Cash flows from operating activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r65",
      "r68",
      "r75",
      "r98",
      "r125",
      "r431",
      "r443"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net Income (Loss) Attributable to Parent",
        "terseLabel": "Net income",
        "totalLabel": "Net income",
        "verboseLabel": "Net income"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails",
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome",
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/NetIncomePerShareDetails",
      "http://www.irobot.com/role/QuarterlyInformationUnauditedDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "verboseLabel": "Recent Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NonUsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Countries excluding the United States of America (US).",
        "label": "Non-US [Member]",
        "terseLabel": "Non-US [Member]"
       }
      }
     },
     "localname": "NonUsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1": {
     "auth_ref": [
      "r102",
      "r103",
      "r104"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of fixed assets that an Entity acquires in a noncash (or part noncash) acquisition. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.",
        "label": "Noncash or Part Noncash Acquisition, Fixed Assets Acquired",
        "terseLabel": "Additions of property and equipment included in accounts payable"
       }
      }
     },
     "localname": "NoncashOrPartNoncashAcquisitionFixedAssetsAcquired1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NoncompeteAgreementsMember": {
     "auth_ref": [
      "r339"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.",
        "label": "Noncompete Agreements [Member]",
        "terseLabel": "Non-competition agreements"
       }
      }
     },
     "localname": "NoncompeteAgreementsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NondesignatedMember": {
     "auth_ref": [
      "r362"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Derivative instrument not designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).",
        "label": "Not Designated as Hedging Instrument [Member]",
        "terseLabel": "Derivatives not designated as hedging instruments:"
       }
      }
     },
     "localname": "NondesignatedMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r82"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).",
        "label": "Nonoperating Income (Expense)",
        "verboseLabel": "Other income, net"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NotesReceivableFairValueDisclosure": {
     "auth_ref": [
      "r50"
     ],
     "calculation": {
      "http://www.irobot.com/role/FairValueMeasurementsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsFairValueDisclosure",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Fair value portion of an agreement for an unconditional promise by the maker to pay the holder a definite sum of money at a future date.",
        "label": "Notes Receivable, Fair Value Disclosure",
        "terseLabel": "Convertible note"
       }
      }
     },
     "localname": "NotesReceivableFairValueDisclosure",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NumberOfOperatingSegments": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.",
        "label": "Number of Operating Segments",
        "terseLabel": "Number of operating segments"
       }
      }
     },
     "localname": "NumberOfOperatingSegments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "integerItemType"
    },
    "us-gaap_OperatingExpenseMember": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing expenses associated with normal operations.",
        "label": "Operating Expense [Member]",
        "terseLabel": "Operating Expense [Member]"
       }
      }
     },
     "localname": "OperatingExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OperatingExpenses": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.",
        "label": "Operating Expenses",
        "totalLabel": "Total operating expenses"
       }
      }
     },
     "localname": "OperatingExpenses",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Operating Expenses [Abstract]",
        "verboseLabel": "Operating expenses:"
       }
      }
     },
     "localname": "OperatingExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating Income (Loss)",
        "totalLabel": "Operating income"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r406",
      "r414"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost",
        "terseLabel": "Operating Lease, Cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r404"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "totalLabel": "Operating Lease, Liability"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r404"
     ],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "terseLabel": "Current portion of operating lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails",
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r404"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Operating Lease, Liability, Noncurrent",
        "terseLabel": "Operating lease liabilities",
        "totalLabel": "Operating Lease, Liability, Noncurrent"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/LeasesMaturityOfOperatingLeaseLiabilityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r405",
      "r408"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "Operating Lease, Payments",
        "terseLabel": "Operating Lease, Payments"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r403"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Operating Lease, Right-of-Use Asset",
        "terseLabel": "Operating lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r411",
      "r414"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "terseLabel": "Operating Lease, Weighted Average Discount Rate, Percent"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r410",
      "r414"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Operating Lease, Weighted Average Remaining Lease Term"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDue": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "calculation": {
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for leases having an initial or remaining non-cancelable letter-terms in excess of one year.",
        "label": "Operating Leases, Future Minimum Payments Due",
        "totalLabel": "Total minimum lease payments"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract]",
        "verboseLabel": "Summary of future minimum rental payments under operating leases"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "calculation": {
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due 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.",
        "label": "Operating Leases, Future Minimum Payments Due, Next Twelve Months",
        "verboseLabel": "2018"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "calculation": {
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in 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.",
        "label": "Operating Leases, Future Minimum Payments, Due in Five Years",
        "verboseLabel": "2022"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInFiveYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "calculation": {
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in 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.",
        "label": "Operating Leases, Future Minimum Payments, Due in Four Years",
        "verboseLabel": "2021"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInFourYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "calculation": {
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in 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.",
        "label": "Operating Leases, Future Minimum Payments, Due in Three Years",
        "verboseLabel": "2020"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInThreeYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "calculation": {
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in 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.",
        "label": "Operating Leases, Future Minimum Payments, Due in Two Years",
        "verboseLabel": "2019"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueInTwoYears",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter": {
     "auth_ref": [
      "r399",
      "r401"
     ],
     "calculation": {
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due 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.",
        "label": "Operating Leases, Future Minimum Payments, Due Thereafter",
        "verboseLabel": "Thereafter"
       }
      }
     },
     "localname": "OperatingLeasesFutureMinimumPaymentsDueThereafter",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasesRentExpenseNet": {
     "auth_ref": [
      "r400"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rental expense for the reporting period incurred under operating leases, including minimum and any contingent rent expense, net of related sublease income.",
        "label": "Operating Leases, Rent Expense, Net",
        "terseLabel": "Operating Leases, Rent Expense, Net",
        "verboseLabel": "Rental expense under operating leases"
       }
      }
     },
     "localname": "OperatingLeasesRentExpenseNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails",
      "http://www.irobot.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLossCarryforwards": {
     "auth_ref": [
      "r317"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Operating Loss Carryforwards",
        "terseLabel": "Operating loss carryforwards"
       }
      }
     },
     "localname": "OperatingLossCarryforwards",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r5",
      "r6",
      "r7",
      "r44"
     ],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 8.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other Accrued Liabilities, Current",
        "verboseLabel": "Accrued other"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r53"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of current assets classified as other.",
        "label": "Other Assets, Current",
        "verboseLabel": "Other current assets"
       }
      }
     },
     "localname": "OtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r39"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 7.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "verboseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r351",
      "r352",
      "r353"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome": {
       "order": 5.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Other Comprehensive Income (Loss), Available-for-sale Securities Adjustment, Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Net unrealized gains (losses) on marketable securities, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r351",
      "r352",
      "r353"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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), attributable to parent entity.",
        "label": "Other Comprehensive Income (Loss), Derivatives Qualifying as Hedges, Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Directors' deferred compensation"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeDerivativesQualifyingAsHedgesNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r351",
      "r352",
      "r353"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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, attributable to parent entity.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Net foreign currency translation adjustments"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]",
        "terseLabel": "Other comprehensive income (loss):"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": {
     "auth_ref": [
      "r66",
      "r69",
      "r351",
      "r352",
      "r353"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.",
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent",
        "terseLabel": "Other comprehensive income"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax": {
     "auth_ref": [
      "r59",
      "r62",
      "r63",
      "r363"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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).",
        "label": "Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI on Derivatives, Net of Tax",
        "negatedTerseLabel": "Net gains on cash flow hedge reclassified into earnings, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIOnDerivativesNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax": {
     "auth_ref": [
      "r57",
      "r59",
      "r382"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before 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).",
        "label": "Other Comprehensive Income (Loss), Unrealized Gain (Loss) on Derivatives Arising During Period, before Tax",
        "terseLabel": "Effective portion, Gain (loss) recognized in OCI on Derivative"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodBeforeTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax": {
     "auth_ref": [
      "r57",
      "r59",
      "r382"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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).",
        "label": "Other Comprehensive Income (Loss), Unrealized Gain (Loss) on Derivatives Arising During Period, Net of Tax",
        "terseLabel": "Net unrealized gains (losses) on cash flow hedges, net of tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeUnrealizedGainLossOnDerivativesArisingDuringPeriodNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementOfComprehensiveIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherCurrentAssetsMember": {
     "auth_ref": [
      "r365",
      "r379"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other current assets.",
        "label": "Other Current Assets [Member]",
        "terseLabel": "Other current assets"
       }
      }
     },
     "localname": "OtherCurrentAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherEmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of obligations incurred for employer-related costs classified as other, payable within one year or the normal operating cycle, if longer.",
        "label": "Other Employee-related Liabilities, Current",
        "terseLabel": "Accrued other compensation"
       }
      }
     },
     "localname": "OtherEmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other Liabilities, Noncurrent",
        "terseLabel": "Other long-term liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNoncurrentAssetsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other noncurrent assets.",
        "label": "Other Noncurrent Assets [Member]",
        "terseLabel": "Other assets"
       }
      }
     },
     "localname": "OtherNoncurrentAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherNoncurrentLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other noncurrent liabilities.",
        "label": "Other Noncurrent Liabilities [Member]",
        "terseLabel": "Other Noncurrent Liabilities [Member]"
       }
      }
     },
     "localname": "OtherNoncurrentLiabilitiesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesFairValueOfDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpenseMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other nonoperating income (expense).",
        "label": "Other Nonoperating Income (Expense) [Member]",
        "terseLabel": "Other income, net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherOperatingActivitiesCashFlowStatement": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Other cash or noncash adjustments to reconcile net income to cash provided by (used in) operating activities that are not separately disclosed in the statement of cash flows (for example,  cash received or cash paid during the current period for miscellaneous operating activities, net change during the reporting period in other assets or other liabilities).",
        "label": "Other Operating Activities, Cash Flow Statement",
        "terseLabel": "Other"
       }
      }
     },
     "localname": "OtherOperatingActivitiesCashFlowStatement",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PatentedTechnologyMember": {
     "auth_ref": [
      "r341"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Exclusive legal right granted by the government to the owner of the patented technology to exploit the technology for a period of time specified by law.",
        "label": "Patented Technology [Member]",
        "verboseLabel": "Completed technology"
       }
      }
     },
     "localname": "PatentedTechnologyMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": {
     "auth_ref": [
      "r86",
      "r90",
      "r113"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash (inflow) outflow from investing activities classified as other.",
        "label": "Payments for (Proceeds from) Other Investing Activities",
        "negatedTerseLabel": "Change in other assets"
       }
      }
     },
     "localname": "PaymentsForProceedsFromOtherInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r92"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow to reacquire common stock during the period.",
        "label": "Payments for Repurchase of Common Stock",
        "negatedTerseLabel": "Stock repurchases"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [
      "r92"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Payment, Tax Withholding, Share-based Payment Arrangement",
        "negatedTerseLabel": "Income tax withholding payment associated with restricted stock vesting"
       }
      }
     },
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireAvailableForSaleSecurities": {
     "auth_ref": [
      "r87",
      "r159"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow to acquire debt and equity securities not classified as either held-to-maturity securities or trading securities which would be classified as available-for-sale securities and reported at fair value, with unrealized gains and losses excluded from earnings and reported in a separate component of shareholders' equity.",
        "label": "Payments to Acquire Available-for-sale Securities",
        "negatedLabel": "Purchases of investments"
       }
      }
     },
     "localname": "PaymentsToAcquireAvailableForSaleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "auth_ref": [
      "r88",
      "r347"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.",
        "label": "Payments to Acquire Businesses, Gross",
        "terseLabel": "Payments to acquire business net of cash acquired",
        "verboseLabel": "Payments to Acquire Businesses, Gross"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "auth_ref": [
      "r88"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "negatedTerseLabel": "Cash paid for business acquisitions, net of cash acquired"
       }
      }
     },
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r89"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Additions of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r244"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for pension and other postretirement benefits.",
        "label": "Pension and Other Postretirement Benefits Disclosure [Text Block]",
        "terseLabel": "Employee Benefits"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/EmployeeBenefitsNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PerformanceSharesMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share-based payment arrangement awarded for meeting performance target.",
        "label": "Performance Shares [Member]",
        "terseLabel": "Performance Based Restricted Stock Units"
       }
      }
     },
     "localname": "PerformanceSharesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "terseLabel": "Preferred stock, par value (in dollars per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.",
        "label": "Preferred Stock, Shares Authorized",
        "verboseLabel": "Preferred stock, shares authorized"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.",
        "label": "Preferred Stock, Shares Issued",
        "terseLabel": "Preferred stock, shares issued"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.",
        "label": "Preferred Stock, Shares Outstanding",
        "verboseLabel": "Preferred stock, shares outstanding"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheetsParenthetical",
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r21"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.",
        "label": "Preferred Stock, Value, Issued",
        "verboseLabel": "Preferred stock, 5,000 shares authorized and none outstanding"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromDivestitureOfBusinesses": {
     "auth_ref": [
      "r85"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period.",
        "label": "Proceeds from Divestiture of Businesses",
        "terseLabel": "Proceeds from sale of business unit"
       }
      }
     },
     "localname": "ProceedsFromDivestitureOfBusinesses",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities": {
     "auth_ref": [
      "r83",
      "r84",
      "r159"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from sale, maturity, prepayment and call of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).",
        "label": "Proceeds from Sale and Maturity of Debt Securities, Available-for-sale",
        "terseLabel": "Sales and maturities of investments"
       }
      }
     },
     "localname": "ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromSaleOfOtherAssetsInvestingActivities": {
     "auth_ref": [
      "r86"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cash inflow from the sale of other assets recognized in investing activities.",
        "label": "Proceeds from Sale of Other Assets, Investing Activities",
        "terseLabel": "Proceeds from sale of equity investments"
       }
      }
     },
     "localname": "ProceedsFromSaleOfOtherAssetsInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromStockPlans": {
     "auth_ref": [
      "r91"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cash inflow associated with the amount received from the stock plan during the period.",
        "label": "Proceeds from Stock Plans",
        "verboseLabel": "Proceeds from employee stock plans"
       }
      }
     },
     "localname": "ProceedsFromStockPlans",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r38",
      "r208"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Property, Plant and Equipment, Type [Axis]",
        "terseLabel": "Property, Plant and Equipment, Type [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r211"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, accounting policies and methodology, roll forwards, depreciation, depletion and amortization expense, including composite depreciation, accumulated depreciation, depletion and amortization expense, useful lives and method used, income statement disclosures, assets held for sale and public utility disclosures.",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "verboseLabel": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r37",
      "r206"
     ],
     "calculation": {
      "http://www.irobot.com/role/PropertyAndEquipment1Details": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Gross",
        "terseLabel": "Subtotal"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Property, Plant and Equipment [Line Items]",
        "terseLabel": "Property, Plant and Equipment [Line Items]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r13",
      "r14",
      "r208",
      "r441"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      },
      "http://www.irobot.com/role/PropertyAndEquipment1Details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Property, Plant and Equipment, Net",
        "totalLabel": "Property and equipment, net",
        "verboseLabel": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/PropertyAndEquipment1Details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r36",
      "r105",
      "r208"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, basis of assets, depreciation and depletion methods used, including composite deprecation, estimated useful lives, capitalization policy, accounting treatment for costs incurred for repairs and maintenance, capitalized interest and the method it is calculated, disposals and impairments.",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "verboseLabel": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r13",
      "r208"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table Text Block]",
        "verboseLabel": "Property and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipmentTables",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r13",
      "r206"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Property, Plant and Equipment, Type [Domain]",
        "terseLabel": "Property, Plant and Equipment, Type [Domain]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property, Plant and Equipment, Useful Life",
        "terseLabel": "Property, Plant and Equipment, Useful Life"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_QuarterlyFinancialInformationDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Quarterly Financial Information Disclosure [Abstract]"
       }
      }
     },
     "localname": "QuarterlyFinancialInformationDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_QuarterlyFinancialInformationTextBlock": {
     "auth_ref": [
      "r130"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information.",
        "label": "Quarterly Financial Information [Text Block]",
        "verboseLabel": "Quarterly Information (Unaudited)"
       }
      }
     },
     "localname": "QuarterlyFinancialInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/QuarterlyInformationUnaudited"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReceivablesPolicyTextBlock": {
     "auth_ref": [
      "r105",
      "r153",
      "r156",
      "r157",
      "r158"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.",
        "label": "Receivable [Policy Text Block]",
        "verboseLabel": "Accounts receivable allowances"
       }
      }
     },
     "localname": "ReceivablesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]",
        "verboseLabel": "Company's adjustments to its uncertain tax position"
       }
      }
     },
     "localname": "ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r289",
      "r454"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Research and Development Expense",
        "verboseLabel": "Research and development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpenseMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included.",
        "label": "Research and Development Expense [Member]",
        "terseLabel": "Research and Development Expense [Member]",
        "verboseLabel": "Research and development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "auth_ref": [
      "r105",
      "r289"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for costs it has 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.",
        "label": "Research and Development Expense, Policy [Policy Text Block]",
        "verboseLabel": "Research and Development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ResearchMember": {
     "auth_ref": [
      "r318"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Research tax credit carryforwards arising from certain qualifying expenditures incurred to develop new products and processes.",
        "label": "Research Tax Credit Carryforward [Member]",
        "terseLabel": "Research Tax Credit Carryforward"
       }
      }
     },
     "localname": "ResearchMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Type of cash and cash equivalent. Cash is 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.",
        "label": "Cash and Cash Equivalents [Domain]",
        "terseLabel": "Cash and Cash Equivalents [Domain]"
       }
      }
     },
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.",
        "label": "Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Restricted Stock Units (RSUs) [Member]"
       }
      }
     },
     "localname": "RestrictedStockUnitsRSUMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r24",
      "r225",
      "r439"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings (Accumulated Deficit)",
        "verboseLabel": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "verboseLabel": "Retained Earnings (Accumulated Deficit)"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r230",
      "r231"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "terseLabel": "Revenue from Contract with Customer, Excluding Assessed Tax"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "auth_ref": [
      "r106",
      "r237"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue from contract with customer.",
        "label": "Revenue from Contract with Customer [Policy Text Block]",
        "terseLabel": "Revenue Recognition, Policy [Policy Text Block]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionNotes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenue, Initial Application Period Cumulative Effect Transition [Abstract]",
        "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Abstract]"
       }
      }
     },
     "localname": "RevenueInitialApplicationPeriodCumulativeEffectTransitionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Revenue, Initial Application Period Cumulative Effect Transition [Line Items]",
        "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Line Items]"
       }
      }
     },
     "localname": "RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information when using transition method for cumulative effect in initial period of application for revenue from contract with customer.",
        "label": "Revenue, Initial Application Period Cumulative Effect Transition [Table]",
        "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Table]"
       }
      }
     },
     "localname": "RevenueInitialApplicationPeriodCumulativeEffectTransitionTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueMethodsInputsAndAssumptionsUsedAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenue, Methods, Inputs, and Assumptions Used [Abstract]",
        "terseLabel": "Revenue, Methods, Inputs, and Assumptions Used [Abstract]"
       }
      }
     },
     "localname": "RevenueMethodsInputsAndAssumptionsUsedAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionSignificantJudgmentsPolicies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenuePracticalExpedientAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenue, Practical Expedient [Abstract]",
        "terseLabel": "Revenue, Practical Expedient [Abstract]"
       }
      }
     },
     "localname": "RevenuePracticalExpedientAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionPracticalExpedientsPolicies"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRecognitionAndDeferredRevenueAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Revenue Recognition and Deferred Revenue [Abstract]"
       }
      }
     },
     "localname": "RevenueRecognitionAndDeferredRevenueAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r106",
      "r107"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue [Policy Text Block]",
        "verboseLabel": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Revenues": {
     "auth_ref": [
      "r73",
      "r144",
      "r145",
      "r149"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).",
        "label": "Revenues",
        "terseLabel": "Revenue",
        "verboseLabel": "Revenues"
       }
      }
     },
     "localname": "Revenues",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsProFormaDetails",
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/QuarterlyInformationUnauditedDetails",
      "http://www.irobot.com/role/RevenueRecognitionDisaggregationOfRevenueDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Revenues from External Customers and Long-Lived Assets [Line Items]",
        "terseLabel": "Revenues from External Customers and Long-Lived Assets [Line Items]"
       }
      }
     },
     "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r409",
      "r414"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "terseLabel": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r138"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]",
        "terseLabel": "Revenue"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesGainLossOnDerivativesDetails",
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of accrued liabilities.",
        "label": "Schedule of Accrued Liabilities [Table Text Block]",
        "verboseLabel": "Components of accrued expenses"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Debt Securities, Available-for-sale [Line Items]",
        "terseLabel": "Debt Securities, Available-for-sale [Line Items]"
       }
      }
     },
     "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfAvailableForSaleSecuritiesTable": {
     "auth_ref": [
      "r160",
      "r161",
      "r162",
      "r163",
      "r164",
      "r165",
      "r433",
      "r434"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of available-for-sale securities which includes, but is not limited to, changes in the cost basis and fair value, fair value and gross unrealized gain (loss), fair values by type of security, contractual maturity and classification, amortized cost basis, contracts to acquire securities to be accounted for as available-for-sale, debt maturities, transfers to trading, change in net unrealized holding gain (loss) net of tax, continuous unrealized loss position fair value, aggregate losses qualitative disclosures, other than temporary impairment (OTTI) losses or other disclosures related to available for sale securities.",
        "label": "Schedule of Available-for-sale Securities [Table]",
        "terseLabel": "Schedule of Available-for-sale Securities [Table]"
       }
      }
     },
     "localname": "ScheduleOfAvailableForSaleSecuritiesTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "auth_ref": [
      "r333",
      "r334"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]"
       }
      }
     },
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsRobopolisAcquisitionDetails",
      "http://www.irobot.com/role/BusinessCombinationsSalesOnDemandCorporationAcquisitionDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r323"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]",
        "verboseLabel": "Components of income tax expense"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r315"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]",
        "verboseLabel": "Components of net deferred tax assets"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": {
     "auth_ref": [
      "r366",
      "r373",
      "r377"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Derivative Instruments, Gain (Loss) [Table Text Block]",
        "terseLabel": "Schedule of derivative instruments gain (loss)"
       }
      }
     },
     "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock": {
     "auth_ref": [
      "r369"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Derivative Instruments in Statement of Financial Position, Fair Value [Table Text Block]",
        "terseLabel": "Schedule of fair values of derivative instruments"
       }
      }
     },
     "localname": "ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/DerivativeInstrumentsAndHedgingActivitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r125"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "verboseLabel": "Basic and diluted net income per share"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r298"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]",
        "verboseLabel": "Reconciliation of the expected tax (benefit) expense"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": {
     "auth_ref": [
      "r384",
      "r385"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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).",
        "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]",
        "terseLabel": "Schedule of financial assets and liabilities measured at fair value on a recurring basis"
       }
      }
     },
     "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/FairValueMeasurementsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": {
     "auth_ref": [
      "r191"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period.",
        "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]",
        "terseLabel": "Schedule of acquired intangible assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "auth_ref": [
      "r191",
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table]",
        "terseLabel": "Schedule of Finite-Lived Intangible Assets by Major Class [Table]",
        "verboseLabel": "Schedule of Finite-Lived Intangible Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsFutureAmortizationExpenseDetails",
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r191",
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.",
        "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]",
        "verboseLabel": "Other intangible assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock": {
     "auth_ref": [
      "r402"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of future minimum payments required in the aggregate and for each of the five succeeding fiscal years for operating leases having initial or remaining noncancelable lease terms in excess of one year and the total minimum rentals to be received in the future under noncancelable subleases as of the balance sheet date.",
        "label": "Schedule of Future Minimum Rental Payments for Operating Leases [Table Text Block]",
        "verboseLabel": "Summary of future minimum rental payments under operating leases"
       }
      }
     },
     "localname": "ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r188",
      "r189"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.",
        "label": "Schedule of Goodwill [Table Text Block]",
        "terseLabel": "Schedule of goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": {
     "auth_ref": [
      "r110"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions.",
        "label": "Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]",
        "terseLabel": "Schedule of income (loss) before provision for income taxes"
       }
      }
     },
     "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r8",
      "r31",
      "r32",
      "r33"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "verboseLabel": "Inventory"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/InventoryTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r221"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Product Warranty Liability [Table Text Block]",
        "verboseLabel": "Activity related to the warranty accrual"
       }
      }
     },
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "auth_ref": [
      "r38",
      "r208"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment [Table]",
        "terseLabel": "Property, Plant and Equipment [Table]"
       }
      }
     },
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock": {
     "auth_ref": [
      "r129"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data.",
        "label": "Quarterly Financial Information [Table Text Block]",
        "verboseLabel": "Details of Quarterly Information (Unaudited)"
       }
      }
     },
     "localname": "ScheduleOfQuarterlyFinancialInformationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/QuarterlyInformationUnauditedTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": {
     "auth_ref": [
      "r337"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.",
        "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]",
        "terseLabel": "Schedule of allocation of purchase price"
       }
      }
     },
     "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/BusinessCombinationsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": {
     "auth_ref": [
      "r72",
      "r73",
      "r150"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule of material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material.  An entity may also provide subtotals of geographic information about groups of countries.",
        "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]",
        "terseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]"
       }
      }
     },
     "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomersDetailsTextual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r248",
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about share-based payment arrangement.",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": {
     "auth_ref": [
      "r255"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.",
        "label": "Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]",
        "verboseLabel": "Activities relating to time based restricted stock units"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Details comprising a table providing supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range [Table]",
        "terseLabel": "Schedule Of Share Based Compensation Shares Authorized Under Stock Option Plans By Exercise Price Range [Table]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range [Table Text Block]",
        "verboseLabel": "Summary of information about stock options outstanding"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r255",
      "r266",
      "r268"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Payment Arrangement, Option, Activity [Table Text Block]",
        "verboseLabel": "Summary of stock option plan activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of employee stock purchase plans, including, but not limited to: (a) expected term, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.",
        "label": "Schedule of Share-based Payment Award, Employee Stock Purchase Plan, Valuation Assumptions [Table Text Block]",
        "terseLabel": "Schedule of Share-based Payment Award, Employee Stock Purchase Plan, Valuation Assumptions [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardEmployeeStockPurchasePlanValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r271"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]",
        "verboseLabel": "Fair value of each option grant computed on the grant date"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": {
     "auth_ref": [
      "r308",
      "r324"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the change in unrecognized tax benefits.",
        "label": "Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]",
        "verboseLabel": "Schedule of adjustments to uncertain tax position"
       }
      }
     },
     "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": {
     "auth_ref": [
      "r196"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.",
        "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]",
        "verboseLabel": "Estimated future amortization expense related to current intangible assets"
       }
      }
     },
     "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SecurityOwnedNotReadilyMarketableLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Security Owned Not Readily Marketable [Line Items]",
        "terseLabel": "Security Owned Not Readily Marketable [Line Items]"
       }
      }
     },
     "localname": "SecurityOwnedNotReadilyMarketableLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SecurityOwnedNotReadilyMarketableTable": {
     "auth_ref": [
      "r423"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of information about not readily marketable securities and investments including, but not limited to, description of security or investment, fair value and value as measured by quoted price.",
        "label": "Security Owned Not Readily Marketable [Table]",
        "terseLabel": "Security Owned Not Readily Marketable [Table]"
       }
      }
     },
     "localname": "SecurityOwnedNotReadilyMarketableTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "localname": "SegmentReportingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "auth_ref": [
      "r152"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.",
        "label": "Segment Reporting Disclosure [Text Block]",
        "verboseLabel": "Industry Segment, Geographic Information and Significant Customers"
       }
      }
     },
     "localname": "SegmentReportingDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IndustrySegmentGeographicInformationAndSignificantCustomers"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SelectedQuarterlyFinancialInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Selected Quarterly Financial Information [Abstract]",
        "verboseLabel": "Details of Quarterly Information (Unaudited)"
       }
      }
     },
     "localname": "SelectedQuarterlyFinancialInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/QuarterlyInformationUnauditedDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.",
        "label": "Selling and Marketing Expense",
        "verboseLabel": "Selling and marketing"
       }
      }
     },
     "localname": "SellingAndMarketingExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingAndMarketingExpenseMember": {
     "auth_ref": [
      "r77"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling and marketing expense.",
        "label": "Selling and Marketing Expense [Member]",
        "terseLabel": "Selling and Marketing Expense [Member]",
        "verboseLabel": "Selling and marketing"
       }
      }
     },
     "localname": "SellingAndMarketingExpenseMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r96"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlowsCalc2": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Noncash Expense",
        "terseLabel": "Share-based Payment Arrangement, Noncash Expense",
        "verboseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "auth_ref": [
      "r250"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r260"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "negatedLabel": "Number of Shares Underlying Restricted Stock, Forfeited"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r264"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "terseLabel": "Weighted Average Grant Date Fair Value, Forfeited (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r262"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "verboseLabel": "Number of Shares Underlying Restricted Stock, Granted"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r262"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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).",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "verboseLabel": "Weighted Average Grant Date Fair Value, Granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "auth_ref": [
      "r261"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "periodEndLabel": "Number of Shares Underlying Restricted Stock, Ending Balance",
        "periodStartLabel": "Number of Shares Underlying Restricted Stock, Beginning Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r261"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "periodEndLabel": "Weighted Average Grant Date Fair Value, Ending Balance (in dollars per share)",
        "periodStartLabel": "Weighted Average Grant Date Fair Value, Beginning Balance (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term for equity-based awards excluding options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Outstanding, Weighted Average Remaining Contractual Terms",
        "terseLabel": "Outstanding, weighted average remaining contractual term"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsOutstandingWeightedAverageRemainingContractualTerms",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r263"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "negatedLabel": "Number of Shares Underlying Restricted Stock, Vested"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r263"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value",
        "verboseLabel": "Weighted Average Grant Date Fair Value, Vested (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions and Methodology [Abstract]",
        "verboseLabel": "Fair value of each option grant computed on the grant date"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "auth_ref": [
      "r273"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "terseLabel": "Expected dividend rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The estimated measure of the maximum 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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate, Maximum",
        "verboseLabel": "Expected volatility, maximum"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMaximum",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The estimated measure of the minimum 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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate, Minimum",
        "verboseLabel": "Expected volatility, minimum"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRateMinimum",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The maximum risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate, Maximum",
        "verboseLabel": "Risk-free interest rate, maximum"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMaximum",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The minimum risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate, Minimum",
        "verboseLabel": "Risk-free interest rate, minimum"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRateMinimum",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The highest percentage of annual salary that an employee is permitted to utilize with respect to the plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Rate",
        "terseLabel": "Maximum percentage of salary"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumEmployeeSubscriptionRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The highest quantity of shares an employee can purchase under the plan per period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Maximum Number of Shares Per Employee",
        "terseLabel": "Maximum number of shares per employee"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardMaximumNumberOfSharesPerEmployee",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant",
        "terseLabel": "Number of shares available for grant"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Additional Disclosures [Abstract]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r258"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number",
        "periodEndLabel": "Number of Shares, Exercisable"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": {
     "auth_ref": [
      "r258"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Exercisable (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r267"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value",
        "terseLabel": "Options, exercises in period, intrinsic value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": {
     "auth_ref": [
      "r260"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period",
        "negatedLabel": "Number of Shares, Canceled"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Gross number of share options (or share units) granted during the period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r279"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value",
        "periodEndLabel": "Aggregate Intrinsic Value, Ending Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r257",
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number",
        "periodEndLabel": "Number of Shares, Ending Balance",
        "periodStartLabel": "Number of Shares, Beginning Balance"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding [Roll Forward]",
        "verboseLabel": "Summary of stock option plan activity"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r256"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price",
        "periodEndLabel": "Weighted Average Exercise Price, Ending Balance (in dollars per share)",
        "periodStartLabel": "Weighted Average Exercise Price, Beginning Balance (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": {
     "auth_ref": [
      "r268"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value",
        "periodEndLabel": "Aggregate Intrinsic Value, Vested and expected to vest"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of fully vested and expected to vest options outstanding that can 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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number",
        "periodEndLabel": "Number of Shares, Vested and expected to vest"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Vested and expected to vest (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward": {
     "auth_ref": [
      "r249"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Description of terms of award under share-based payment arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Terms of Award",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Terms of Award"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardTermsOfAward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r246",
      "r252"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]",
        "terseLabel": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails",
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Exercised (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average price at which grantees could have acquired the underlying shares with respect to stock options that were terminated.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Forfeitures in Period, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Canceled (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.",
        "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price",
        "terseLabel": "Weighted Average Exercise Price, Granted (in dollars per share)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r105",
      "r248",
      "r253"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.",
        "label": "Share-based Payment Arrangement [Policy Text Block]",
        "verboseLabel": "Stock-Based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock": {
     "auth_ref": [
      "r254"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Tabular disclosure of number and weighted-average grant date fair value for nonvested performance shares.",
        "label": "Share-based Payment Arrangement, Performance Shares, Activity [Table Text Block]",
        "terseLabel": "Activities relating to performance based restricted stock units"
       }
      }
     },
     "localname": "ShareBasedCompensationPerformanceSharesAwardUnvestedActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis": {
     "auth_ref": [
      "r270"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by range of option prices pertaining to options granted.",
        "label": "Exercise Price Range [Axis]",
        "terseLabel": "Share Based Compensation Shares Authorized Under Stock Option Plans By Exercise Price Range [Axis]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Supplementary information on outstanding and exercisable share awards as of the balance sheet date which stratifies outstanding options by ranges of exercise prices.",
        "label": "Exercise Price Range [Domain]",
        "terseLabel": "Share Based Compensation Shares Authorized Under Stock Option Plans Exercise Price Range [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range [Line Items]",
        "terseLabel": "Share Based Compensation Shares Authorized Under Stock Option Plans Exercise Price Range [Line Items]"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit",
        "verboseLabel": "Range of Exercise Price, Minimum"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions": {
     "auth_ref": [
      "r265"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable",
        "verboseLabel": "Number Exercisable"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding",
        "verboseLabel": "Number Outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Upper Range Limit",
        "verboseLabel": "Range of Exercise Price, Maximum"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharePrice": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Price of a single share of a number of saleable stocks of a company.",
        "label": "Share Price",
        "verboseLabel": "Share price (in dollars per share)"
       }
      }
     },
     "localname": "SharePrice",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": {
     "auth_ref": [
      "r250"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Percentage of vesting of award under share-based payment arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage",
        "terseLabel": "Award vesting rights percentage"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1": {
     "auth_ref": [
      "r275"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of cost expensed and capitalized for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount",
        "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Intrinsic value of outstanding award under share-based payment arrangement. Excludes share and unit options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding",
        "terseLabel": "Outstanding, aggregate intrinsic value"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": {
     "auth_ref": [
      "r251"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period",
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r272",
      "r280"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term",
        "verboseLabel": "Expected life"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsAssumptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": {
     "auth_ref": [
      "r279"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Intrinsic Value",
        "periodEndLabel": "Aggregate Intrinsic Value, Exercisable"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term",
        "verboseLabel": "Weighted Average Remaining Contractual Term, Exercisable"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Nonvested, Number of Shares [Roll Forward]",
        "verboseLabel": "Activities relating to restricted stock awards"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedNumberOfSharesRollForward",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationRsusAndPsusDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term",
        "verboseLabel": "Weighted Average Remaining Contractual Term, Ending Balance"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term",
        "terseLabel": "Weighted Average Remaining Contractual Term, Vested and expected to vest"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Purchase price of common stock expressed as a percentage of its fair value.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent",
        "terseLabel": "Purchase price of common stock percent"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationEsppDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": {
     "auth_ref": [
      "r258"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price",
        "verboseLabel": "Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": {
     "auth_ref": [
      "r257"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price",
        "verboseLabel": "Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Weighted average remaining contractual term of outstanding stock options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Remaining Contractual Term",
        "verboseLabel": "Options Outstanding Weighted Average Remaining Contractual Life"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsExercisePriceRangeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation",
        "negatedLabel": "Stock withheld to cover tax withholdings requirements upon restricted stock vesting"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r115"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Significant Accounting Policies [Text Block]",
        "verboseLabel": "Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SoftwareAndSoftwareDevelopmentCostsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Purchased software applications and internally developed software for sale, licensing or long-term internal use.",
        "label": "Software and Software Development Costs [Member]",
        "terseLabel": "Business applications software"
       }
      }
     },
     "localname": "SoftwareAndSoftwareDevelopmentCostsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StandardProductWarrantyAccrual": {
     "auth_ref": [
      "r220"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability.",
        "label": "Standard Product Warranty Accrual",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails1"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition": {
     "auth_ref": [
      "r219"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in the standard product warranty accrual from a business acquisition. Excludes extended product warranties.",
        "label": "Standard Product Warranty Accrual, Additions from Business Acquisition",
        "terseLabel": "Liability assumed"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualAdditionsFromBusinessAcquisition",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails1"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.irobot.com/role/AccruedExpensesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.",
        "label": "Standard Product Warranty Accrual, Current",
        "verboseLabel": "Accrued warranty"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualCurrent",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualPayments": {
     "auth_ref": [
      "r216"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.",
        "label": "Standard Product Warranty Accrual, Decrease for Payments",
        "negatedLabel": "Warranty usage"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualPayments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails1"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r217"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in the standard product warranty accrual from warranties issued. Excludes extended product warranties.",
        "label": "Standard Product Warranty Accrual, Increase for Warranties Issued",
        "terseLabel": "Provision"
       }
      }
     },
     "localname": "StandardProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/CommitmentsAndContingenciesDetails1"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StandardProductWarrantyPolicy": {
     "auth_ref": [
      "r105",
      "r218"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability.",
        "label": "Standard Product Warranty, Policy [Policy Text Block]",
        "terseLabel": "Warranty"
       }
      }
     },
     "localname": "StandardProductWarrantyPolicy",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StateAndLocalJurisdictionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity.",
        "label": "State and Local Jurisdiction [Member]",
        "terseLabel": "State and Local Jurisdiction"
       }
      }
     },
     "localname": "StateAndLocalJurisdictionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_StatementClassOfStockAxis": {
     "auth_ref": [
      "r20",
      "r21",
      "r22",
      "r224"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by the different classes of stock of the entity.",
        "label": "Class of Stock [Axis]",
        "terseLabel": "Class of Stock [Axis]"
       }
      }
     },
     "localname": "StatementClassOfStockAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r49",
      "r224"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]",
        "terseLabel": "Statement, Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/StockBasedCompensationTables",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesOtherAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Statement [Line Items]",
        "terseLabel": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]",
        "terseLabel": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/StockBasedCompensationNarrativeDetails",
      "http://www.irobot.com/role/StockBasedCompensationStockCompExpenseClassificationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": {
     "auth_ref": [
      "r21",
      "r22",
      "r224",
      "r225"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited.",
        "label": "Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures",
        "verboseLabel": "Vesting of restricted stock units"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r21",
      "r22",
      "r224",
      "r225",
      "r259"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period",
        "negatedLabel": "Number of Shares, Exercised",
        "verboseLabel": "Issuance of common stock under employee stock plans"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/StockBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueOther": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Value of shares of stock issued attributable to transactions classified as other.",
        "label": "Stock Issued During Period, Value, Other",
        "terseLabel": "Vesting of restricted stock units"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueOther",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": {
     "auth_ref": [
      "r224",
      "r225"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited.",
        "label": "Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures",
        "verboseLabel": "Vesting of restricted stock units"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r49",
      "r224",
      "r225"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Stock Issued During Period, Value, Stock Options Exercised",
        "verboseLabel": "Issuance of common stock under employee stock plans"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramAuthorizedAmount1": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of stock repurchase plan authorized.",
        "label": "Stock Repurchase Program, Authorized Amount",
        "terseLabel": "Stock repurchase program, authorized amount"
       }
      }
     },
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchaseProgramExpirationDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Expiration date for the purchase of an entity's own shares under a stock repurchase plan, in the CCYY-MM-DD format.",
        "label": "Stock Repurchase Program Expiration Date",
        "terseLabel": "Program expiration date"
       }
      }
     },
     "localname": "StockRepurchaseProgramExpirationDate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The number of shares authorized to be repurchased by an entity's Board of Directors under a stock repurchase plan.",
        "label": "Stock Repurchase Program, Number of Shares Authorized to be Repurchased",
        "terseLabel": "Stock repurchase program, authorized amount (in shares)"
       }
      }
     },
     "localname": "StockRepurchaseProgramNumberOfSharesAuthorizedToBeRepurchased",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": {
     "auth_ref": [
      "r21",
      "r22",
      "r224",
      "r225"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Number of shares that have been repurchased and retired during the period.",
        "label": "Stock Repurchased and Retired During Period, Shares",
        "negatedTerseLabel": "Stock repurchases",
        "terseLabel": "Stock repurchases (in shares)"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": {
     "auth_ref": [
      "r21",
      "r22",
      "r224",
      "r225"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital).",
        "label": "Stock Repurchased and Retired During Period, Value",
        "negatedTerseLabel": "Stock repurchases",
        "terseLabel": "Stock repurchases"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://www.irobot.com/role/StockholdersEquityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r22",
      "r25",
      "r26",
      "r155"
     ],
     "calculation": {
      "http://www.irobot.com/role/ConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Stockholders' Equity Attributable to Parent",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance",
        "totalLabel": "Total stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedBalanceSheets",
      "http://www.irobot.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "auth_ref": [
      "r226"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "verboseLabel": "Stockholders' Equity"
       }
      }
     },
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/StockholdersEquity"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Supplemental Cash Flow Information [Abstract]",
        "verboseLabel": "Supplemental disclosure of cash flow information"
       }
      }
     },
     "localname": "SupplementalCashFlowInformationAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCreditCarryforwardAmount": {
     "auth_ref": [
      "r317"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The amount of the tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.",
        "label": "Tax Credit Carryforward, Amount",
        "terseLabel": "Tax credit carryforward"
       }
      }
     },
     "localname": "TaxCreditCarryforwardAmount",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TaxCreditCarryforwardAxis": {
     "auth_ref": [
      "r318"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by specific tax credit related to an unused tax credit.",
        "label": "Tax Credit Carryforward [Axis]",
        "terseLabel": "Tax Credit Carryforward [Axis]"
       }
      }
     },
     "localname": "TaxCreditCarryforwardAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCreditCarryforwardLineItems": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Tax Credit Carryforward [Line Items]",
        "terseLabel": "Tax Credit Carryforward [Line Items]"
       }
      }
     },
     "localname": "TaxCreditCarryforwardLineItems",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCreditCarryforwardNameDomain": {
     "auth_ref": [
      "r318"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The name of the tax credit carryforward.",
        "label": "Tax Credit Carryforward, Name [Domain]",
        "terseLabel": "Tax Credit Carryforward, Name [Domain]"
       }
      }
     },
     "localname": "TaxCreditCarryforwardNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TaxCreditCarryforwardTable": {
     "auth_ref": [
      "r318"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "A listing of tax credit carryforwards available to reduce future taxable income including descriptions, amounts, expiration dates, limitations on use and the related deferred tax assets and valuation allowances.",
        "label": "Tax Credit Carryforward [Table]",
        "terseLabel": "Tax Credit Carryforward [Table]"
       }
      }
     },
     "localname": "TaxCreditCarryforwardTable",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r323"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of income tax expense (benefit) for remeasurement of deferred tax from change in tax rate pursuant to Tax Cuts and Jobs Act.",
        "label": "Tax Cuts and Jobs Act, Change in Tax Rate, Income Tax Expense (Benefit)",
        "terseLabel": "Tax Cuts and Jobs Act of 2017, income tax expense (benefit), remeasurement of certain deferred tax assets and liabilities"
       }
      }
     },
     "localname": "TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ToolsDiesAndMoldsMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Equipment commonly used to cut, shape, and form metal and other materials into goods for sale.",
        "label": "Tools, Dies and Molds [Member]",
        "terseLabel": "Tooling"
       }
      }
     },
     "localname": "ToolsDiesAndMoldsMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/PropertyAndEquipment1Details",
      "http://www.irobot.com/role/PropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TradeNamesMember": {
     "auth_ref": [
      "r338"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.",
        "label": "Trade Names [Member]",
        "verboseLabel": "Tradename"
       }
      }
     },
     "localname": "TradeNamesMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/GoodwillAndOtherIntangibleAssetsIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "auth_ref": [
      "r420"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms.",
        "label": "Financial Instruments [Domain]",
        "terseLabel": "Financial Instruments [Domain]"
       }
      }
     },
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ShortTermInvestmentsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_TypeOfAdoptionMember": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Adoption and early adoption of sources of change to generally accepted accounting principles (GAAP) in the United States. The FASB released the FASB Accounting Standards Codification as the authoritative source of literature effective for interim and annual periods ending after September 15, 2009. As part of the Codification process, the FASB issues Accounting Standards Updates to amend the Codification but otherwise the Accounting Standards Updates are not authoritative in their own right. All previous accounting standards (such as FASB Statements of Financial Accounting Standards, FASB Interpretations, FASB Staff Positions, Emerging Issues Task Force Consensuses, other pronouncements of the FASB or other designated bodies, or other forms of GAAP are considered accounting pronouncements) were superseded upon the adoption of the Codification. For an interim period, references to the superseded standards are included to help users transition from the previous accounting hierarchy and will be removed from future versions of this taxonomy.",
        "label": "Type of Adoption [Domain]",
        "terseLabel": "Type of Adoption [Domain]"
       }
      }
     },
     "localname": "TypeOfAdoptionMember",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/RevenueRecognitionInitialApplicationTables"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrecognizedTaxBenefits": {
     "auth_ref": [
      "r292",
      "r302"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of unrecognized tax benefits.",
        "label": "Unrecognized Tax Benefits",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefits",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions": {
     "auth_ref": [
      "r303"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.",
        "label": "Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions",
        "negatedLabel": "Increase (decrease) for tax positions related to prior years",
        "negatedTerseLabel": "Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesEffectiveIncomeTaxReconciliationDetails",
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities": {
     "auth_ref": [
      "r305"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from settlements with taxing authorities.",
        "label": "Unrecognized Tax Benefits, Decrease Resulting from Settlements with Taxing Authorities",
        "negatedLabel": "Decrease for settlements with applicable taxing authorities"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromSettlementsWithTaxingAuthorities",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": {
     "auth_ref": [
      "r300"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued",
        "terseLabel": "Income tax penalties and interest accrued"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from acquisitions.",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Acquisition",
        "terseLabel": "Increase for tax positions related to acquisition"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromAcquisition",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": {
     "auth_ref": [
      "r304"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return.",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions",
        "verboseLabel": "Increase for tax positions related to the current year"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": {
     "auth_ref": [
      "r303"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns.",
        "label": "Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions",
        "terseLabel": "Increase for tax positions related to prior years"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": {
     "auth_ref": [
      "r306"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations.",
        "label": "Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations",
        "negatedLabel": "Decrease for lapses of statute of limitations"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesUnrecognizedTaxBenefitsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": {
     "auth_ref": [
      "r307"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate.",
        "label": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate",
        "terseLabel": "Unrecognized tax benefits that would impact effective tax rate"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/IncomeTaxesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r132",
      "r133",
      "r134",
      "r135",
      "r140",
      "r141",
      "r142"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "verboseLabel": "Use of Estimates"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesAdjustments": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase (decrease) in valuation and qualifying accounts and reserves from adjustment.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Increase (Decrease) Adjustment",
        "terseLabel": "Other adjustments"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesBalance": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Amount",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period",
        "terseLabel": "Valuation allowances and reserves"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesBalance",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in valuation and qualifying accounts and reserves from charge to cost and expense.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Cost and Expense",
        "terseLabel": "Provision"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesChargedToCostAndExpense",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in valuation and qualifying accounts and reserves from charge to accounts other than cost and expense.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Additions, Charge to Other Account",
        "terseLabel": "Adjustment related to adoption of ASC 606"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesChargedToOtherAccounts",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDeductions": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of decrease in valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Deduction",
        "negatedTerseLabel": "Deduction"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDeductions",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesDomain": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]",
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesDomain",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesReservesOfBusinessesAcquired": {
     "auth_ref": [
      "r114"
     ],
     "crdr": "credit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of increase in valuation and qualifying accounts and reserves from business combination.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves, Business Acquired",
        "terseLabel": "Acquired balance"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesReservesOfBusinessesAcquired",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ValuationAllowancesAndReservesTypeAxis": {
     "auth_ref": [
      "r114"
     ],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Information by valuation and qualifying accounts and reserves.",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]",
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]"
       }
      }
     },
     "localname": "ValuationAllowancesAndReservesTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/AccountsReceivableAllowancesDetails",
      "http://www.irobot.com/role/SummaryOfSignificantAccountingPoliciesNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r407",
      "r414"
     ],
     "crdr": "debit",
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.",
        "label": "Variable Lease, Cost",
        "terseLabel": "Variable Lease, Cost"
       }
      }
     },
     "localname": "VariableLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r123"
     ],
     "calculation": {
      "http://www.irobot.com/role/NetIncomePerShareDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.",
        "label": "Weighted Average Number Diluted Shares Outstanding Adjustment",
        "verboseLabel": "Dilutive effect of employee stock plans"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/NetIncomePerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r119",
      "r123"
     ],
     "calculation": {
      "http://www.irobot.com/role/NetIncomePerShareDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "totalLabel": "Diluted weighted-average shares outstanding",
        "verboseLabel": "Diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/NetIncomePerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "verboseLabel": "Number of shares used in per share calculations:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r118",
      "r123"
     ],
     "calculation": {
      "http://www.irobot.com/role/NetIncomePerShareDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-US": {
       "role": {
        "documentation": "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.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Weighted-average shares outstanding",
        "verboseLabel": "Basic"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2019-01-31",
     "presentation": [
      "http://www.irobot.com/role/ConsolidatedStatementsOfIncome",
      "http://www.irobot.com/role/NetIncomePerShareDetails"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 7
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/subtopic&trid=2122178"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(25))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4273-108586"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4297-108586"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4304-108586"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4313-108586"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4332-108586"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18780-107790"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18823-107790"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18823-107790"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(26))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(h)(1)(i))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08.(n))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-04(a))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24072-122690"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.12-09)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24092-122690"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1448-109256"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1505-109256"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1252-109256"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=SL5780133-109256"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1337-109256"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3630-109257"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=117327953&loc=d3e4984-109258"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=116846552&loc=d3e543-108305"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=118952077&loc=d3e1280-108306"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "270",
   "URI": "http://asc.fasb.org/topic&trid=2126967"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8933-108599"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9054-108599"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "280",
   "URI": "http://asc.fasb.org/topic&trid=2134510"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5033-111524"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5074-111524"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=27010918&loc=d3e74512-122707"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10149-111534"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10178-111534"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118954083&loc=d3e26853-111562"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118939692&loc=d3e27161-111563"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118939692&loc=d3e27198-111563"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118939692&loc=d3e27290-111563"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118939692&loc=d3e27337-111563"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118939692&loc=d3e27340-111563"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)-(d)",
   "Topic": "320",
   "URI": "http://asc.fasb.org/extlink&oid=118939692&loc=d3e27357-111563"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "321",
   "URI": "http://asc.fasb.org/extlink&oid=116654751&loc=SL75117539-209714"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919244-210447"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(23))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919253-210447"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919258-210447"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919230-210447"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955255&loc=SL82921835-210448"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955579&loc=SL82922888-210455"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955579&loc=SL82922895-210455"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118955579&loc=SL82922900-210455"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "30",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=118942371&loc=SL82922954-210456"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116846819&loc=d3e3927-108312"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=77989000&loc=SL49117168-202975"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13854-109267"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(26)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(27))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "40",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=118172244&loc=d3e17916-109280"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "50",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=16397303&loc=d3e19379-109286"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226348&loc=d3e2443-110228"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14326-108349"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=118943654&loc=d3e12069-110248"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(2))",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(3))",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1),(c)(5)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=109126253&loc=d3e4852-112606"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "505",
   "URI": "http://asc.fasb.org/topic&trid=2208762"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130531-203044"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130532-203044"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(i)(1)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=113356391&loc=SL49131195-203048"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "http://asc.fasb.org/topic&trid=49130388"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "710",
   "URI": "http://asc.fasb.org/topic&trid=2127225"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "712",
   "URI": "http://asc.fasb.org/topic&trid=2197446"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(ii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(01)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=118257860&loc=d3e4179-114921"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116855982&loc=d3e4534-113899"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a),(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(2)(iii)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(l)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(5))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11149-113907"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11178-113907"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11374-113907"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "740",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=116859624&loc=d3e23524-113945"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(a)",
   "Topic": "720",
   "URI": "http://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "35",
   "Subparagraph": "(b)",
   "Topic": "720",
   "URI": "http://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=SL37586934-109318"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32123-109318"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32247-109318"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32280-109318"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31917-109318"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31931-109318"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32687-109319"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32698-109319"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32718-109319"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32718-109319"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(4)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=SL6600010-109319"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32809-109319"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32840-109319"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32847-109319"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32559-109319"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32559-109319"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32621-109319"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32632-109319"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "217",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=117331294&loc=d3e36027-109320"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=109238882&loc=d3e38679-109324"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "30",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=65884525&loc=d3e40913-109327"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Subparagraph": "(a)-(d)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=6909625&loc=d3e227-128457"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116868678&loc=d3e961-128460"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(2)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(3)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "37",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116868840&loc=d3e2207-128464"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116869197&loc=d3e4845-128472"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5333-128473"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "38",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5504-128473"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=6911189&loc=d3e6387-128476"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=6911189&loc=d3e6393-128476"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=6911189&loc=d3e6396-128476"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6527-128477"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "30",
   "SubTopic": "30",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6571-128477"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(b)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(f)(1)",
   "Topic": "805",
   "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "805",
   "URI": "http://asc.fasb.org/topic&trid=2303972"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.12)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=d3e5291-111683"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569616-111683"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569643-111683"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c),(3)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3A-02(b))",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116822174&loc=d3e355033-122828"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3A-03(b))",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116822174&loc=d3e355100-122828"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579240-113959"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579245-113959"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5579245-113959"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5580258-113959"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)(ii)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41620-113959"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41620-113959"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "c",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41638-113959"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41638-113959"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5618551-113959"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624163-113959"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4CC",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL109998890-113959"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624177-113959"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=SL5624181-113959"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109980867&loc=d3e41675-113959"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "182",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=116861445&loc=SL5629052-113961"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "25",
   "Subparagraph": "(a)(1),(2)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109977999&loc=d3e76258-113986"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "25",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109977999&loc=d3e76258-113986"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=109978405&loc=d3e80720-113993"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "815",
   "URI": "http://asc.fasb.org/topic&trid=2229140"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(1)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(3)",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.17)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19279-110258"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=SL6742756-110258"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "60",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "http://asc.fasb.org/extlink&oid=7493716&loc=d3e21868-110260"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13279-108611"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13433-108611"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13531-108611"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=98513438&loc=d3e33268-110906"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(Note 3)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=82846649&loc=d3e38371-112697"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6801-107765"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41499-112717"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41502-112717"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "840",
   "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41502-112717"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a),20,24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=77888399&loc=SL77918982-209971"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(bb)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "50",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=116651436&loc=d3e122625-111746"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=68072869&loc=d3e41242-110953"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "820",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=35710923&loc=d3e45360-110995"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(22))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "320",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=75019621&loc=d3e62557-112803"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "320",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=75019621&loc=d3e62586-112803"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(15)(b)(2))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(18))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(19))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=99380617&loc=SL75241803-196195"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "http://asc.fasb.org/extlink&oid=6589523&loc=d3e617274-123014"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "740",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491622&loc=d3e9504-115650"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=6590653&loc=d3e638233-123024"
  },
  "r452": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r453": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r454": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r455": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128487-111756"
  },
  "r456": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r457": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r458": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1-"
  },
  "r459": {
   "Name": "Forms 10-K, 20-F, 40-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "15",
   "Subsection": "d-1"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r461": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6911-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.8)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226008-175313"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e637-108580"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6935-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e681-108580"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669686-108580"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e689-108580"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL34724391-108580"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL34724394-108580"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e7018-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e557-108580"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116657188&loc=SL116659661-227067"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-03(e))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868656-224227"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(1))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(20))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(21))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(4))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(b)(2))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3151-108585"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a),(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(24))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3521-108585"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3044-108585"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>108
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6836444448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Income - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 28, 2019</div></th>
<th class="th"><div>Dec. 29, 2018</div></th>
<th class="th"><div>Dec. 30, 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_Revenues', window );">Revenue</a></td>
<td class="nump">$ 1,214,010<span></span>
</td>
<td class="nump">$ 1,092,584<span></span>
</td>
<td class="nump">$ 883,911<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_irbt_Costofproductrevenue', window );">Cost of product revenue</a></td>
<td class="nump">658,362<span></span>
</td>
<td class="nump">518,612<span></span>
</td>
<td class="nump">438,114<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSoldAmortization', window );">Amortization of acquired intangible assets</a></td>
<td class="nump">11,721<span></span>
</td>
<td class="nump">18,544<span></span>
</td>
<td class="nump">12,638<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_CostOfGoodsAndServicesSold', window );">Total cost of revenue</a></td>
<td class="nump">670,083<span></span>
</td>
<td class="nump">537,156<span></span>
</td>
<td class="nump">450,752<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_GrossProfit', window );">Gross profit</a></td>
<td class="nump">543,927<span></span>
</td>
<td class="nump">555,428<span></span>
</td>
<td class="nump">433,159<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</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_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">141,607<span></span>
</td>
<td class="nump">140,629<span></span>
</td>
<td class="nump">113,149<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Selling and marketing</a></td>
<td class="nump">231,548<span></span>
</td>
<td class="nump">210,411<span></span>
</td>
<td class="nump">162,110<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">83,103<span></span>
</td>
<td class="nump">97,501<span></span>
</td>
<td class="nump">84,771<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_irbt_AmortizationofIntangibleAssetsNonproduction', window );">Amortization of acquired intangible assets</a></td>
<td class="nump">1,051<span></span>
</td>
<td class="nump">1,065<span></span>
</td>
<td class="nump">439<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_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">457,309<span></span>
</td>
<td class="nump">449,606<span></span>
</td>
<td class="nump">360,469<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_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">86,618<span></span>
</td>
<td class="nump">105,822<span></span>
</td>
<td class="nump">72,690<span></span>
</td>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other income, net</a></td>
<td class="nump">12,215<span></span>
</td>
<td class="nump">2,800<span></span>
</td>
<td class="nump">3,676<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income taxes</a></td>
<td class="nump">98,833<span></span>
</td>
<td class="nump">108,622<span></span>
</td>
<td class="nump">76,366<span></span>
</td>
</tr>
<tr class="re">
<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</a></td>
<td class="nump">13,533<span></span>
</td>
<td class="nump">20,630<span></span>
</td>
<td class="nump">25,402<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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 85,300<span></span>
</td>
<td class="nump">$ 87,992<span></span>
</td>
<td class="nump">$ 50,964<span></span>
</td>
</tr>
<tr class="re">
<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>Net income per 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>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic</a></td>
<td class="nump">$ 3.04<span></span>
</td>
<td class="nump">$ 3.18<span></span>
</td>
<td class="nump">$ 1.85<span></span>
</td>
</tr>
<tr class="re">
<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</a></td>
<td class="nump">$ 2.97<span></span>
</td>
<td class="nump">$ 3.07<span></span>
</td>
<td class="nump">$ 1.77<span></span>
</td>
</tr>
<tr class="ro">
<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>Number of shares used in per share calculations:</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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">28,097<span></span>
</td>
<td class="nump">27,692<span></span>
</td>
<td class="nump">27,611<span></span>
</td>
</tr>
<tr class="ro">
<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</a></td>
<td class="nump">28,735<span></span>
</td>
<td class="nump">28,640<span></span>
</td>
<td class="nump">28,753<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_irbt_AmortizationofIntangibleAssetsNonproduction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Amortization of Intangible Assets, Nonproduction</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;">irbt_AmortizationofIntangibleAssetsNonproduction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_irbt_Costofproductrevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cost of product revenue</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;">irbt_Costofproductrevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>irbt_</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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_CostOfGoodsAndServicesSoldAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 expense for allocation of cost of intangible asset over its useful life directly used in production of good and rendering of service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSoldAmortization</td>
</tr>
<tr>
<td style="padding-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_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_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 per each share of common stock or unit 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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 7: http://www.xbrl.org/2003/role/disclosureRef<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=117326831&amp;loc=d3e1252-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-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_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 52<br> -URI http://asc.fasb.org/extlink&amp;oid=117327953&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=117326831&amp;loc=d3e1252-109256<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=d3e1337-109256<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=117326831&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 940<br> -SubTopic 20<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=68072869&amp;loc=d3e41242-110953<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -URI http://asc.fasb.org/extlink&amp;oid=116634182&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=109234566&amp;loc=d3e22694-107794<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=109238882&amp;loc=d3e38679-109324<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669619-108580<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637391&amp;loc=SL114874048-224260<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118930883&amp;loc=SL7669625-108580<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI http://asc.fasb.org/extlink&amp;oid=116637232&amp;loc=SL114874131-224263<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=118932676&amp;loc=d3e3602-108585<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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_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_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-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_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</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_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-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_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=115929826&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=116634182&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-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_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.Show.hideAR();">X</a></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 amount of expenses directly related to the marketing or selling of products or services.</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_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=117326831&amp;loc=d3e1505-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_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://fasb.org/us-gaap/role/ref/legacyRef<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=117326831&amp;loc=d3e1448-109256<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_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>109
<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.19.3.a.u2</span><table class="report" border="0" cellspacing="2" id="idp6822998736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventory (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 28, 2019</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 );">Inventory</a></td>
<td class="text"><div style="line-height:120%;padding-top:6px;text-indent:32px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">Inventory consists of the following (in thousands):</span></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="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;28, <br/>2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:8pt;font-weight:bold;">December&#160;29, <br/>2018</span></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;"><span style="font-family:inherit;font-size:10pt;">Raw materials</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,825</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><span>2,992</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">Finished goods</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>154,522</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>161,641</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></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;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>157,347</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;">&#160;</span></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;"><span style="font-family:inherit;font-size:10pt;">$</span></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;"><span style="font-family:inherit;font-size:10pt;"><span>164,633</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:inherit;font-size:10pt;"><br/></span></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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<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 4: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ Details</a><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>
</SEC-DOCUMENT>
